def main(argv=sys.argv[<NUM_LIT:1>:]):
global ext_lang<EOL>parser = argparse.ArgumentParser(description=description,<EOL>epilog=epilog)<EOL>parser.add_argument('<STR_LIT>', metavar='<STR_LIT>', nargs='<STR_LIT:*>',<EOL>help='<STR_LIT>')<EOL>parser.add_argument('<STR_LIT>', action='<STR_LIT:version>', version=version)<EOL>parser.add_argument('<STR_LIT>', '<STR_LIT>', action='<STR_LIT:store_true>',<EOL>help='<STR_LIT>')<EOL>parser.add_argument('<STR_LIT>', action='<STR_LIT:store_true>',<EOL>help='<STR_LIT>')<EOL>parser.add_argument('<STR_LIT>', action='<STR_LIT:store>', default='<STR_LIT>',<EOL>help='<STR_LIT>')<EOL>args = parser.parse_args(argv)<EOL>if args.print_langs:<EOL><INDENT>parser.print_usage()<EOL>sys.stdout.write('<STR_LIT:\n>')<EOL>sys.stdout.write(textwrap.fill(textwrap.dedent("""<STR_LIT>""")) + '<STR_LIT:\n>')<EOL>for cls in sorted({getattr(langs, nm) for nm in langs.__all__}):<EOL><INDENT>l = cls.__name__<EOL>out = cls.__doc__.split('<STR_LIT>')[<NUM_LIT:0>]<EOL>out = out + '<STR_LIT>' + '<STR_LIT:U+002CU+0020>'.join(cls.ext) + '<STR_LIT:)>'<EOL>prefix2 = '<STR_LIT:U+0020>'.join(['<STR_LIT>'] * <NUM_LIT:20>)<EOL>prefix1 = prefix2[:<NUM_LIT:2>] + l + prefix2[<NUM_LIT:2> + len(l):]<EOL>wrapped = textwrap.fill(out, initial_indent=prefix1,<EOL>subsequent_indent=prefix2)<EOL>sys.stdout.write(wrapped + '<STR_LIT:\n>')<EOL><DEDENT>parser.exit(<NUM_LIT:0>)          <EOL><DEDENT>if not args.files:<EOL><INDENT>parser.print_usage()<EOL><DEDENT>for fname in args.files:<EOL><INDENT>with open(fname) as f:<EOL><INDENT>text = f.read()<EOL><DEDENT>if args.lang == '<STR_LIT>':<EOL><INDENT>l = language(fname)<EOL><DEDENT>else:<EOL><INDENT>l = language(args.lang, True)<EOL><DEDENT>text = l.gen(text)<EOL>if args.in_place:<EOL><INDENT>with open(fname, '<STR_LIT:w>') as f:<EOL><INDENT>f.write(text)<EOL><DEDENT><DEDENT>else:<EOL><INDENT>sys.stdout.write(text)<EOL><DEDENT><DEDENT>
The main method.