def METHOD_NAME():
    # args and usage
    parser = argparse.ArgumentParser()
    # fmt: off
    parser.add_argument(
        "apikey",
        action="store",
        type=str,
        default=None,
        help="API key"
    )
    parser.add_argument(
        "startweek",
        action="store",
        type=int,
        default=None,
        help="first week (ex: 201440)"
    )
    parser.add_argument(
        "endweek",
        action="store",
        type=int,
        default=None,
        help="last week (ex: 201520)"
    )
    parser.add_argument(
        "location",
        action="store",
        type=str,
        default=None,
        help="location (ex: US)"
    )
    parser.add_argument(
        "term",
        action="store",
        type=str,
        default=None,
        help="term/query/topic (ex: /m/0cycc)"
    )
    # fmt: on
    args = parser.parse_args()
    # get the data
    ght = GHT(args.apikey)
    result = ght.get_data(args.startweek, args.endweek, args.location, args.term)
    values = result["values"]
    # sanity check
    expected_weeks = result["num_weeks"]
    received_weeks = len([v for v in values if v is not None and type(v) == float and v >= 0])
    if expected_weeks != received_weeks:
        raise Exception(f"expected {int(expected_weeks)} weeks, received {int(received_weeks)}")
    # results
    epiweeks = [ew for ew in flu.range_epiweeks(args.startweek, args.endweek, inclusive=True)]
    for (epiweek, value) in zip(epiweeks, values):
        print(f"{int(epiweek):6}: {value:.3f}")