<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def make_parser():
 """ Creates an argument parser configured with options to run a bot from the command line. :return: configured argument parser :rtype: :class:`argparse.ArgumentParser` """

    parser = ArgumentParser(
        description='Start an IRC bot instance from the command line.',
        formatter_class=ArgumentDefaultsHelpFormatter,
    )
    parser.add_argument(
        '-v', '--version',
        action='version',
        version='{0} v{1}'.format(NAME, VERSION)
    )
    parser.add_argument(
        '-s', '--server',
        metavar='HOST',
        required=True,
        help='the host to connect to'
    )
    parser.add_argument(
        '-p', '--port',
        metavar='PORT',
        type=int,
        default=6667,
        help='the port the server is listening on'
    )
    parser.add_argument(
        '-n', '--nick',
        metavar='NAME',
        required=True,
        help="the bot's nickname"
    )
    parser.add_argument(
        '-N', '--name',
        metavar='NAME',
        default=NAME,
        help="the bot's real name"
    )
    parser.add_argument(
        '-c', '--channels',
        metavar='CHAN',
        nargs='*',
        help='join this channel upon connection'
    )
    parser.add_argument(
        '-l', '--log',
        metavar='LEVEL',
        default='INFO',
        help='minimal level for displayed logging messages'
    )
    parser.add_argument(
        '-S', '--ssl',
        action='store_true',
        help='connect to the server using SSL'
    )
    return parser