<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def argument_switch_generator(argument_name=None, default=True, reverse=False, keep=False):
 """ Create switch function which return the status from specified named argument Parameters argument_name : string or None An argument name which is used to judge the status. If ``None`` is specified, the value of ``tolerance.utils.DEFAULT_ARGUMENT_NAME`` will be used instead. default : boolean A default value of this switch function. It is used when specifid ``**kwargs`` does not have named argument reverse : boolean Reverse the status (Default: ``False``) keep : boolean If it is ``True``, keep named argument in ``**kwargs``. Returns ------- function A switch function which return status, args, and kwargs respectively. Examples -------- True True True True True True True True """

    def switch_function(*args, **kwargs):
        if argument_name in kwargs:
            if keep:
                status = kwargs.get(argument_name)
            else:
                status = kwargs.pop(argument_name)
            if reverse:
                status = not status
        else:
            status = default
        return bool(status), args, kwargs
    if argument_name is None:
        argument_name = DEFAULT_ARGUMENT_NAME
    return switch_function