<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def create_parser():
 """Returns argument parser """


    parser = argparse.ArgumentParser(
        description='Extract structured data from PDF files and save to CSV or JSON.'
    )

    parser.add_argument(
        '--input-reader',
        choices=input_mapping.keys(),
        default='pdftotext',
        help='Choose text extraction function. Default: pdftotext',
    )

    parser.add_argument(
        '--output-format',
        choices=output_mapping.keys(),
        default='none',
        help='Choose output format. Default: none',
    )

    parser.add_argument(
        '--output-name',
        '-o',
        dest='output_name',
        default='invoices-output',
        help='Custom name for output file. Extension is added based on chosen format.',
    )

    parser.add_argument(
        '--debug', dest='debug', action='store_true', help='Enable debug information.'
    )

    parser.add_argument(
        '--copy', '-c', dest='copy', help='Copy and rename processed PDFs to specified folder.'
    )

    parser.add_argument(
        '--move', '-m', dest='move', help='Move and rename processed PDFs to specified folder.'
    )

    parser.add_argument(
        '--filename-format',
        dest='filename',
        default="{date} {invoice_number} {desc}.pdf",
        help='Filename format to use when moving or copying processed PDFs.'
             'Default: "{date} {invoice_number} {desc}.pdf"',
    )

    parser.add_argument(
        '--template-folder',
        '-t',
        dest='template_folder',
        help='Folder containing invoice templates in yml file. Always adds built-in templates.',
    )

    parser.add_argument(
        '--exclude-built-in-templates',
        dest='exclude_built_in_templates',
        default=False,
        help='Ignore built-in templates.',
        action="store_true",
    )

    parser.add_argument(
        'input_files', type=argparse.FileType('r'), nargs='+', help='File or directory to analyze.'
    )

    return parser