code: def genargs() -> ArgumentParser:
      
      parser = ArgumentParser()
      parser.add_argument("infile", help="Input ShExC specification")
      parser.add_argument("-nj", "--nojson", help="Do not produce json output", action="store_true")
      parser.add_argument("-nr", "--nordf", help="Do not produce rdf output", action="store_true")
      parser.add_argument("-j", "--jsonfile", help="Output ShExJ file (Default: {infile}.json)")
      parser.add_argument("-r", "--rdffile", help="Output ShExR file (Default: {infile}.{fmt suffix})")
      parser.add_argument("--context", help="Alternative @context")
      parser.add_argument("-f", "--format",
                          choices=list(set(x.name for x in rdflib_plugins(None, rdflib_Serializer)
                                           if '/' not in str(x.name))),
                          help="Output format (Default: turtle)", default="turtle")
      return parser
docs: Create a command line parser
      :return: parser