code: def search_reference_sets(
              self, accession=None, md5checksum=None, assembly_id=None):
          
          request = protocol.SearchReferenceSetsRequest()
          request.accession = pb.string(accession)
          request.md5checksum = pb.string(md5checksum)
          request.assembly_id = pb.string(assembly_id)
          request.page_size = pb.int(self._page_size)
          return self._run_search_request(
              request, "referencesets", protocol.SearchReferenceSetsResponse)
docs: Returns an iterator over the ReferenceSets fulfilling the specified
          conditions.
  
          :param str accession: If not null, return the reference sets for which
              the `accession` matches this string (case-sensitive, exact match).
          :param str md5checksum: If not null, return the reference sets for
              which the `md5checksum` matches this string (case-sensitive, exact
              match). See :class:`ga4gh.protocol.ReferenceSet::md5checksum` for
              details.
          :param str assembly_id: If not null, return the reference sets for
              which the `assembly_id` matches this string (case-sensitive,
              exact match).
          :return: An iterator over the :class:`ga4gh.protocol.ReferenceSet`
              objects defined by the query parameters.