code: def ifind_first_object(self, ObjectClass, **kwargs):
          
  
          # Call regular find() if USER_IFIND_MODE is nocase_collation
          if self.user_manager.USER_IFIND_MODE=='nocase_collation':
              return self.find_first_object(ObjectClass, **kwargs)
  
          # Convert each name/value pair in 'kwargs' into a filter
          query = ObjectClass.query
          for field_name, field_value in kwargs.items():
  
              # Make sure that ObjectClass has a 'field_name' property
              field = getattr(ObjectClass, field_name, None)
              if field is None:
                  raise KeyError("BaseAlchemyAdapter.find_first_object(): Class '%s' has no field '%s'." % (ObjectClass, field_name))
  
              # Add a case sensitive filter to the query
              query = query.filter(field.ifind(field_value))  # case insensitive!!
  
          # Execute query
          return query.first()
docs: Retrieve the first object of type ``ObjectClass``,
          matching the specified filters in ``**kwargs`` -- case insensitive.
  
          | If USER_IFIND_MODE is 'nocase_collation' this method maps to find_first_object().
          | If USER_IFIND_MODE is 'ifind' this method performs a case insensitive find.