async def invoke(self, *args, **kwargs):
try:<EOL><INDENT>command = args[<NUM_LIT:0>]<EOL><DEDENT>except IndexError:<EOL><INDENT>raise TypeError('<STR_LIT>') from None<EOL><DEDENT>arguments = []<EOL>if command.cog is not None:<EOL><INDENT>arguments.append(command.cog)<EOL><DEDENT>arguments.append(self)<EOL>arguments.extend(args[<NUM_LIT:1>:])<EOL>ret = await command.callback(*arguments, **kwargs)<EOL>return ret<EOL>
r"""|coro|

        Calls a command with the arguments given.

        This is useful if you want to just call the callback that a
        :class:`.Command` holds internally.

        Note
        ------
        You do not pass in the context as it is done for you.

        Warning
        ---------
        The first parameter passed **must** be the command being invoked.

        Parameters
        -----------
        command: :class:`.Command`
            A command or subclass of a command that is going to be called.
        \*args
            The arguments to to use.
        \*\*kwargs
            The keyword arguments to use.