@abc.abstractmethod<EOL><INDENT>def get_agent_query_session_for_agency(self, agency_id, proxy):<DEDENT>
return<EOL>
Gets the ``OsidSession`` associated with the agent query service for the given agency.

        :param agency_id: the ``Id`` of the agency
        :type agency_id: ``osid.id.Id``
        :param proxy: a proxy
        :type proxy: ``osid.proxy.Proxy``
        :return: an ``AgentQuerySession``
        :rtype: ``osid.authentication.AgentQuerySession``
        :raise: ``NotFound`` -- ``agency_id`` not found
        :raise: ``NullArgument`` -- ``agency_id`` or ``proxy`` is ``null``
        :raise: ``OperationFailed`` -- ``unable to complete request``
        :raise: ``Unimplemented`` -- ``supports_agent_query()`` or ``supports_visible_federation()`` is ``false``

        *compliance: optional -- This method must be implemented if
        ``supports_agent_query()`` and ``supports_visible_federation()``
        are ``true``.*