public function listFinancialEvents($request)
    {
        if (!($request instanceof MWSFinancesService_Model_ListFinancialEventsRequest)) {
            require_once (dirname(__FILE__) . '/Model/ListFinancialEventsRequest.php');
            $request = new MWSFinancesService_Model_ListFinancialEventsRequest($request);
        }
        $parameters = $request->toQueryParameterArray();
        $parameters['Action'] = 'ListFinancialEvents';
        $httpResponse = $this->_invoke($parameters);

        require_once (dirname(__FILE__) . '/Model/ListFinancialEventsResponse.php');
        $response = MWSFinancesService_Model_ListFinancialEventsResponse::fromXML($httpResponse['ResponseBody']);
        $response->setResponseHeaderMetadata($httpResponse['ResponseHeaderMetadata']);
        return $response;
    }