human
Complete this python program:
def argument(*param_decls, **attrs):
assistant
#Here is the Python program you requested.

    """Attaches an argument to the command.  All positional arguments are
    passed as parameter declarations to :class:`Argument`; all keyword
    arguments are forwarded unchanged (except ``cls``).
    This is equivalent to creating an :class:`Argument` instance manually
    and attaching it to the :attr:`Command.params` list.
    :param cls: the argument class to instantiate.  This defaults to
    :class:`Argument`.
    """
    def decorator(f):
        ArgumentClass = attrs.pop('cls', Argument)
        _param_memo(f, ArgumentClass(param_decls, **attrs))
        return f
    return decorator