def METHOD_NAME():
    parser = argparse.ArgumentParser(
        usage=__doc__
    )
    parser.add_argument(
        "--input",
        dest="filename",
        required=False,
        help="sphinx inventory file (objects.inv)",
        metavar="FILE",
        type=lambda x: is_valid_file(parser, x))
    parser.add_argument(
        "--output",
        dest="output",
        default=os.path.join(BASE_DIR, "scripts", "modules", "rna_manual_reference.py"),
        required=False,
        help="path to output including filename and extentsion",
        metavar="FILE")
    parser.add_argument(
        "--url",
        dest="url",
        default="https://docs.blender.org/manual/en/dev/objects.inv",
        required=False,
        help="url to sphinx inventory file (objects.inv)",
        metavar="FILE")
    args = parser.parse_args()
    if args.filename:
        # Download and decode objects.inv
        print("Loading from file...")
        inv = sphobjinv.Inventory(args.filename)
    else:
        # Load and decode objects.inv
        print("Downloading...")
        inv = sphobjinv.Inventory(url=args.url)
    write_mappings(inv, args.output)
    print("Done!")