<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def provider_parser(subparser):
 """Configure provider parser for auto provider"""

    subparser.description = '''
        Provider 'auto' enables the Lexicon provider auto-discovery.
        Based on the nameservers declared for the given domain,
        Lexicon will try to find the DNS provider holding the DNS zone if it is supported.
        Actual DNS zone read/write operations will be delegated to the provider found:
        every environment variable or command line specific to this provider
        can be passed to Lexicon and will be processed accordingly.
        '''
    subparser.add_argument("--mapping-override", metavar="[DOMAIN]:[PROVIDER], ...",
                           help="comma separated list of elements in the form of "
                                "[DOMAIN]:[PROVIDER] to authoritatively map a "
                                "particular domain to a particular provider")

    # Explore and load the arguments available for every provider into the 'auto' provider.
    for provider_name, provider_module in AVAILABLE_PROVIDERS.items():
        parser = argparse.ArgumentParser(add_help=False)
        provider_module.provider_parser(parser)

        for action in parser._actions:  # pylint: disable=protected-access
            action.option_strings = [re.sub(
                r'^--(.*)$', r'--{0}-\1'.format(provider_name), option)
                                     for option in action.option_strings]
            action.dest = 'auto_{0}_{1}'.format(provider_name, action.dest)
            subparser._add_action(action)