'Initialize a ``DeprecatedAction`` instance.
:param option_strings: The recognized option strings.
:param dest: The attribute that will be set.
:param help: Help text.  This will be updated to indicate the
deprecation, and if ``use`` is provided, that
text will be included as well.
:param real_action: The actual action to invoke.  This is
interpreted the same way as the ``action``
parameter.
:param use: Text explaining which option to use instead.'

def __init__(self, option_strings, dest, help=None, real_action=None, use=None, **kwargs):

    if (not help):
        if use:
            help = (_('Deprecated;    %(use)s') % {'use': use})
        else:
            help = _('Deprecated')
    elif (help != argparse.SUPPRESS):
        if use:
            help = (_('%(help)s    (Deprecated;    %(use)s)') % {'help': help, 'use': use})
        else:
            help = (_('%(help)s    (Deprecated)') % {'help': help})
    super(DeprecatedAction, self).__init__(option_strings, dest, help=help, **kwargs)
    self.emitted = set()
    self.use = use
    if (real_action == 'nothing'):
        self.real_action_args = False
        self.real_action = None
    elif ((real_action is None) or isinstance(real_action, six.string_types)):
        self.real_action_args = (option_strings, dest, help, kwargs)
        self.real_action = real_action
    else:
        self.real_action_args = False
        self.real_action = real_action(option_strings, dest, help=help, **kwargs)
