def find(predicate: Callable[([T], Any)], seq: Iterable[T]) -> Optional[T]:
    "A helper to return the first element found in the sequence\n    that meets the predicate. For example: ::\n\n        member = discord.utils.find(lambda m: m.name == 'Mighty', channel.guild.members)\n\n    would find the first :class:`~discord.Member` whose name is 'Mighty' and return it.\n    If an entry is not found, then ``None`` is returned.\n\n    This is different from :func:`py:filter` due to the fact it stops the moment it finds\n    a valid entry.\n\n    Parameters\n    -----------\n    predicate\n        A function that returns a boolean-like result.\n    seq: :class:`collections.abc.Iterable`\n        The iterable to search through.\n    "
    for element in seq:
        if predicate(element):
            return element
    return None
A helper to return the first element found in the sequence
that meets the predicate. For example: ::

    member = discord.utils.find(lambda m: m.name == 'Mighty', channel.guild.members)

would find the first :class:`~discord.Member` whose name is 'Mighty' and return it.
If an entry is not found, then ``None`` is returned.

This is different from :func:`py:filter` due to the fact it stops the moment it finds
a valid entry.

Parameters
-----------
predicate
    A function that returns a boolean-like result.
seq: :class:`collections.abc.Iterable`
    The iterable to search through.
def find(predicate: Callable[([T], Any)], seq: Iterable[T]) -> Optional[T]:
    "A helper to return the first element found in the sequence\n    that meets the predicate. For example: ::\n\n        member = discord.utils.find(lambda m: m.name == 'Mighty', channel.guild.members)\n\n    would find the first :class:`~discord.Member` whose name is 'Mighty' and return it.\n    If an entry is not found, then ``None`` is returned.\n\n    This is different from :func:`py:filter` due to the fact it stops the moment it finds\n    a valid entry.\n\n    Parameters\n    -----------\n    predicate\n        A function that returns a boolean-like result.\n    seq: :class:`collections.abc.Iterable`\n        The iterable to search through.\n    "
    for element in seq:
        if predicate(element):
            return element
    return None