code: def lookup(self, allowed_types, **kwargs):
          
          at = getToolByName(self, 'archetype_tool')
          for portal_type in allowed_types:
              catalog = at.catalog_map.get(portal_type, [None])[0]
              catalog = getToolByName(self, catalog)
              kwargs['portal_type'] = portal_type
              brains = catalog(**kwargs)
              if brains:
                  return brains
docs: Lookup an object of type (allowed_types).  kwargs is sent
          directly to the catalog.