From 1e942a5568b96229f4d16a8d79c0308d2e72cbc6 Mon Sep 17 00:00:00 2001
From: Nat DeFries <42820733+nmdefries@users.noreply.github.com>
Date: Fri, 8 Sep 2023 15:43:09 -0400
Subject: [PATCH] include old and new example API responses
---
.../flusurv/new_grasp_location_result.json | 34 ++++
src/acquisition/flusurv/new_grasp_result.json | 167 ++++++++++++++++++
.../flusurv/old_grasp_location_result.json | 42 +++++
src/acquisition/flusurv/old_grasp_result.json | 89 ++++++++++
4 files changed, 332 insertions(+)
create mode 100644 src/acquisition/flusurv/new_grasp_location_result.json
create mode 100644 src/acquisition/flusurv/new_grasp_result.json
create mode 100644 src/acquisition/flusurv/old_grasp_location_result.json
create mode 100644 src/acquisition/flusurv/old_grasp_result.json
diff --git a/src/acquisition/flusurv/new_grasp_location_result.json b/src/acquisition/flusurv/new_grasp_location_result.json
new file mode 100644
index 000000000..fe4fc09d9
--- /dev/null
+++ b/src/acquisition/flusurv/new_grasp_location_result.json
@@ -0,0 +1,34 @@
+### New location-specific API response from https://gis.cdc.gov/GRASP/Flu3/PostPhase03DataTool?appVersion=Public
+# with payload
+# {"appversion": "Public", "key": "getdata", "injson": [
+# {"networkid": 1, "catchmentid": 22, "seasonid": 30 },
+# {"networkid": 1, "catchmentid": 22, "seasonid": 49}
+# ]}
+# The "seasonid" parameter is required. To fetch all historical data,
+# each season must be listed separately. Seasonids that don't exist don't
+# cause errors, they are simply ignored.
+#
+# However, if no listed seasonids exist for the specified location, then
+# the returned JSON is:
+# {
+# 'default_data': {
+# 'response': 'No Data'
+# }
+# }
+{
+ # Data!! Format is list of dicts. Each obs' fields are
+ # labelled, so we could easily convert this to dataframe.
+ 'default_data': [
+ {'networkid': 1, 'catchmentid': 22, 'seasonid': 49, 'ageid': 0, 'sexid': 0, 'raceid': 1, 'rate': 4.3, 'weeklyrate': 1.7, 'mmwrid': 2493},
+ {'networkid': 1, 'catchmentid': 22, 'seasonid': 49, 'ageid': 0, 'sexid': 0, 'raceid': 1, 'rate': 20.3, 'weeklyrate': 0.1, 'mmwrid': 2513},
+ {'networkid': 1, 'catchmentid': 22, 'seasonid': 49, 'ageid': 0, 'sexid': 0, 'raceid': 1, 'rate': 20.6, 'weeklyrate': 0.1, 'mmwrid': 2516},
+ {'networkid': 1, 'catchmentid': 22, 'seasonid': 49, 'ageid': 0, 'sexid': 0, 'raceid': 1, 'rate': 20.7, 'weeklyrate': 0.0, 'mmwrid': 2519},
+ {'networkid': 1, 'catchmentid': 22, 'seasonid': 49, 'ageid': 0, 'sexid': 0, 'raceid': 2, 'rate': 11.6, 'weeklyrate': 3.6, 'mmwrid': 2493},
+ {'networkid': 1, 'catchmentid': 22, 'seasonid': 49, 'ageid': 0, 'sexid': 0, 'raceid': 2, 'rate': 39.6, 'weeklyrate': 0.3, 'mmwrid': 2513},
+ {'networkid': 1, 'catchmentid': 22, 'seasonid': 49, 'ageid': 0, 'sexid': 0, 'raceid': 2, 'rate': 40.7, 'weeklyrate': 0.5, 'mmwrid': 2516},
+ {'networkid': 1, 'catchmentid': 22, 'seasonid': 49, 'ageid': 0, 'sexid': 0, 'raceid': 2, 'rate': 41.3, 'weeklyrate': 0.1, 'mmwrid': 2519},
+ {'networkid': 1, 'catchmentid': 22, 'seasonid': 49, 'ageid': 0, 'sexid': 0, 'raceid': 3, 'rate': 12.8, 'weeklyrate': 4.8, 'mmwrid': 2493},
+ {'networkid': 1, 'catchmentid': 22, 'seasonid': 49, 'ageid': 0, 'sexid': 0, 'raceid': 3, 'rate': 36.0, 'weeklyrate': 0.1, 'mmwrid': 2513},
+ ...
+ ]
+}
diff --git a/src/acquisition/flusurv/new_grasp_result.json b/src/acquisition/flusurv/new_grasp_result.json
new file mode 100644
index 000000000..dca59c6f0
--- /dev/null
+++ b/src/acquisition/flusurv/new_grasp_result.json
@@ -0,0 +1,167 @@
+### New API response from https://gis.cdc.gov/GRASP/Flu3/PostPhase03DataTool?appVersion=Public
+# with payload
+# {"appversion": "Public", "key": "", "injson": []}
+{
+ # Last data update date
+ 'loaddatetime': 'Aug 26, 2023',
+ # Text appearing on dashboard
+ 'app_text': [
+ {
+ 'description': 'SplashScreenDisclaimerText',
+ 'text': 'The Influenza Hospitalization Surveillance Network (FluSurv-NET) conducts population-based surveillance for laboratory-confirmed influenza-associated hospitalizations in children (persons younger than 18 years) and adults. The current network covers over 70 counties in the 10 Emerging Infection..."
+ }
+ ],
+ # IDs for different data sources/networks
+ 'networks': [
+ {'networkid': 1, 'name': 'FluSurv-NET'},
+ {'networkid': 2, 'name': 'EIP'},
+ {'networkid': 3, 'name': 'IHSP'}
+ ],
+ # IDs (network ID + catchment ID) specifying geos and data sources available
+ 'catchments': [
+ {'networkid': 1, 'name': 'FluSurv-NET', 'area': 'Entire Network', 'catchmentid': '22', 'beginseasonid': 49, 'endseasonid': 51},
+
+ {'networkid': 2, 'name': 'EIP', 'area': 'California', 'catchmentid': '1', 'beginseasonid': 43, 'endseasonid': 51},
+ {'networkid': 2, 'name': 'EIP', 'area': 'Colorado', 'catchmentid': '2', 'beginseasonid': 43, 'endseasonid': 51},
+ {'networkid': 2, 'name': 'EIP', 'area': 'Connecticut', 'catchmentid': '3', 'beginseasonid': 43, 'endseasonid': 51},
+ {'networkid': 2, 'name': 'EIP', 'area': 'Entire Network', 'catchmentid': '22', 'beginseasonid': 49, 'endseasonid': 51},
+ {'networkid': 2, 'name': 'EIP', 'area': 'Georgia', 'catchmentid': '4', 'beginseasonid': 43, 'endseasonid': 51},
+ {'networkid': 2, 'name': 'EIP', 'area': 'Maryland', 'catchmentid': '7', 'beginseasonid': 43, 'endseasonid': 51},
+ {'networkid': 2, 'name': 'EIP', 'area': 'Minnesota', 'catchmentid': '9', 'beginseasonid': 43, 'endseasonid': 51},
+ {'networkid': 2, 'name': 'EIP', 'area': 'New Mexico', 'catchmentid': '11', 'beginseasonid': 43, 'endseasonid': 51},
+ {'networkid': 2, 'name': 'EIP', 'area': 'New York - Albany', 'catchmentid': '13', 'beginseasonid': 43, 'endseasonid': 51},
+ {'networkid': 2, 'name': 'EIP', 'area': 'New York - Rochester', 'catchmentid': '14', 'beginseasonid': 43, 'endseasonid': 51},
+ {'networkid': 2, 'name': 'EIP', 'area': 'Oregon', 'catchmentid': '17', 'beginseasonid': 43, 'endseasonid': 51},
+ {'networkid': 2, 'name': 'EIP', 'area': 'Tennessee', 'catchmentid': '20', 'beginseasonid': 43, 'endseasonid': 51},
+
+ {'networkid': 3, 'name': 'IHSP', 'area': 'Entire Network', 'catchmentid': '22', 'beginseasonid': 49, 'endseasonid': 51},
+ {'networkid': 3, 'name': 'IHSP', 'area': 'Idaho', 'catchmentid': '6', 'beginseasonid': 49, 'endseasonid': 51},
+ {'networkid': 3, 'name': 'IHSP', 'area': 'Iowa', 'catchmentid': '5', 'beginseasonid': 49, 'endseasonid': 51},
+ {'networkid': 3, 'name': 'IHSP', 'area': 'Michigan', 'catchmentid': '8', 'beginseasonid': 49, 'endseasonid': 51},
+ {'networkid': 3, 'name': 'IHSP', 'area': 'Ohio', 'catchmentid': '15', 'beginseasonid': 50, 'endseasonid': 51},
+ {'networkid': 3, 'name': 'IHSP', 'area': 'Oklahoma', 'catchmentid': '16', 'beginseasonid': 49, 'endseasonid': 50},
+ {'networkid': 3, 'name': 'IHSP', 'area': 'Rhode Island', 'catchmentid': '18', 'beginseasonid': 50, 'endseasonid': 51},
+ {'networkid': 3, 'name': 'IHSP', 'area': 'South Dakota', 'catchmentid': '19', 'beginseasonid': 49, 'endseasonid': 49},
+ {'networkid': 3, 'name': 'IHSP', 'area': 'Utah', 'catchmentid': '21', 'beginseasonid': 50, 'endseasonid': 51}
+ ],
+ # Season labels, descriptions, IDs, and date ranges
+ 'seasons': [
+ {'description': 'Season 2006-07', 'enabled': True, 'endweek': 2387, 'label': '2006-07', 'seasonid': 46, 'startweek': 2336, 'IncludeWeeklyRatesAndStrata': True},
+ {'description': 'Season 2003-04', 'enabled': True, 'endweek': 2231, 'label': '2003-04', 'seasonid': 43, 'startweek': 2179, 'IncludeWeeklyRatesAndStrata': True},
+ {'description': 'Season 2009-10', 'enabled': True, 'endweek': 2544, 'label': '2009-10', 'seasonid': 49, 'startweek': 2488, 'IncludeWeeklyRatesAndStrata': True},
+ {'description': 'Season 2012-13', 'enabled': True, 'endweek': 2700, 'label': '2012-13', 'seasonid': 52, 'startweek': 2649, 'IncludeWeeklyRatesAndStrata': True},
+ {'description': 'Season 2015-16', 'enabled': True, 'endweek': 2857, 'label': '2015-16', 'seasonid': 55, 'startweek': 2806, 'IncludeWeeklyRatesAndStrata': True},
+ ...
+ ],
+ # Descriptions of data repporting groups (age, race, sex, and overall). Careful, some of these overlap.
+ # some of "parentidoverlap.
+ 'master_lookup': [
+ {'Variable': 'Age', 'valueid': 1, 'parentid': 97, 'Label': '0-4 yr', 'Color_HexValue': '#d19833', 'Enabled': True},
+ {'Variable': 'Age', 'valueid': 2, 'parentid': 97, 'Label': '5-17 yr', 'Color_HexValue': '#707070', 'Enabled': True},
+ {'Variable': 'Age', 'valueid': 3, 'parentid': 98, 'Label': '18-49 yr', 'Color_HexValue': '#44b3c6', 'Enabled': True},
+ {'Variable': 'Age', 'valueid': 4, 'parentid': 98, 'Label': '50-64 yr', 'Color_HexValue': '#516889', 'Enabled': True},
+ {'Variable': 'Age', 'valueid': 5, 'parentid': 98, 'Label': '65+ yr', 'Color_HexValue': '#cc5e56', 'Enabled': True},
+ {'Variable': 'Age', 'valueid': 7, 'parentid': 5, 'Label': '65-74 yr', 'Color_HexValue': '#cc5e56', 'Enabled': True},
+ {'Variable': 'Age', 'valueid': 8, 'parentid': 5, 'Label': '75-84 yr', 'Color_HexValue': '#cc5e56', 'Enabled': True},
+ {'Variable': 'Age', 'valueid': 9, 'parentid': 5, 'Label': '85+', 'Color_HexValue': '#cc5e56', 'Enabled': True},
+ {'Variable': 'Age', 'valueid': 10, 'parentid': 3, 'Label': '18-29 yr', 'Color_HexValue': '#44b3c6', 'Enabled': True},
+ {'Variable': 'Age', 'valueid': 11, 'parentid': 3, 'Label': '30-39 yr', 'Color_HexValue': '#44b3c6', 'Enabled': True},
+ {'Variable': 'Age', 'valueid': 12, 'parentid': 3, 'Label': '40-49 yr', 'Color_HexValue': '#44b3c6', 'Enabled': True},
+ {'Variable': 'Age', 'valueid': 21, 'parentid': 2, 'Label': '5-11 yr', 'Color_HexValue': '#707070', 'Enabled': True},
+ {'Variable': 'Age', 'valueid': 22, 'parentid': 2, 'Label': '12-17 yr', 'Color_HexValue': '#707070', 'Enabled': True},
+ {'Variable': 'Age', 'valueid': 97, 'parentid': 0, 'Label': '< 18', 'Color_HexValue': '#000000', 'Enabled': True},
+ {'Variable': 'Age', 'valueid': 98, 'parentid': 0, 'Label': '>= 18', 'Color_HexValue': '#000000', 'Enabled': True},
+
+ {'Variable': 'Race', 'valueid': 1, 'parentid': None, 'Label': 'White', 'Color_HexValue': '#516889', 'Enabled': True},
+ {'Variable': 'Race', 'valueid': 2, 'parentid': None, 'Label': 'Black', 'Color_HexValue': '#44b3c6', 'Enabled': True},
+ {'Variable': 'Race', 'valueid': 3, 'parentid': None, 'Label': 'Hispanic/Latino', 'Color_HexValue': '#d19833', 'Enabled': True},
+ {'Variable': 'Race', 'valueid': 4, 'parentid': None, 'Label': 'Asian/Pacific Islander', 'Color_HexValue': '#cc5e56', 'Enabled': True},
+ {'Variable': 'Race', 'valueid': 5, 'parentid': None, 'Label': 'American Indian/Alaska Native', 'Color_HexValue': '#007d8e', 'Enabled': True},
+
+ {'Variable': 'Sex', 'valueid': 1, 'parentid': None, 'Label': 'Male', 'Color_HexValue': '#44b3c6', 'Enabled': True},
+ {'Variable': 'Sex', 'valueid': 2, 'parentid': None, 'Label': 'Female', 'Color_HexValue': '#F2775F', 'Enabled': True},
+
+ {'Variable': None, 'valueid': 0, 'parentid': 0, 'Label': 'Overall', 'Color_HexValue': '#000000', 'Enabled': True},
+ ],
+ # Colors by ID, presumably used in dashboard. Appears to be only some of the age groups. Also doesn't agree with "master_lookup" above.
+ 'colors_qualitative': [
+ {'id': 1, 'hex': '#a6cee3'},
+ {'id': 2, 'hex': '#1f78b4'},
+ {'id': 3, 'hex': '#b2df8a'},
+ {'id': 4, 'hex': '#33a02c'},
+ {'id': 5, 'hex': '#fb9a99'},
+ {'id': 6, 'hex': '#e31a1c'},
+ {'id': 7, 'hex': '#fdbf6f'},
+ {'id': 8, 'hex': '#ff7f00'},
+ {'id': 9, 'hex': '#cab2d6'},
+ {'id': 10, 'hex': '#6a3d9a'},
+ {'id': 12, 'hex': '#b15928'}
+ ],
+ # List of ageids available for each network+catchement combo
+ 'age_catchment_lookup': [
+ {'NetworkId': 1, 'CatchmentID': 22},
+ {'ageID': 1, 'NetworkId': 1, 'CatchmentID': 22},
+ {'ageID': 2, 'NetworkId': 1, 'CatchmentID': 22},
+ {'ageID': 3, 'NetworkId': 1, 'CatchmentID': 22},
+ {'ageID': 4, 'NetworkId': 1, 'CatchmentID': 22},
+ {'ageID': 5, 'NetworkId': 1, 'CatchmentID': 22},
+ {'ageID': 7, 'NetworkId': 1, 'CatchmentID': 22},
+ {'ageID': 8, 'NetworkId': 1, 'CatchmentID': 22},
+ {'ageID': 9, 'NetworkId': 1, 'CatchmentID': 22},
+ {'ageID': 10, 'NetworkId': 1, 'CatchmentID': 22},
+ {'ageID': 11, 'NetworkId': 1, 'CatchmentID': 22},
+ {'ageID': 12, 'NetworkId': 1, 'CatchmentID': 22},
+ {'ageID': 21, 'NetworkId': 1, 'CatchmentID': 22},
+ {'ageID': 22, 'NetworkId': 1, 'CatchmentID': 22},
+ {'ageID': 97, 'NetworkId': 1, 'CatchmentID': 22},
+ {'ageID': 98, 'NetworkId': 1, 'CatchmentID': 22},
+ {'ageID': 99, 'NetworkId': 1, 'CatchmentID': 22},
+ {'NetworkId': 2, 'CatchmentID': 1},
+ {'ageID': 1, 'NetworkId': 2, 'CatchmentID': 1},
+ {'ageID': 2, 'NetworkId': 2, 'CatchmentID': 1},
+ ...
+ ],
+ # List of seasonids available for each network+catchement combo
+ 'season_catchment_lookup': [
+ {'seasonid': 49, 'NetworkId': 1, 'CatchmentID': 22},
+ {'seasonid': 50, 'NetworkId': 1, 'CatchmentID': 22},
+ {'seasonid': 51, 'NetworkId': 1, 'CatchmentID': 22},
+ {'seasonid': 52, 'NetworkId': 1, 'CatchmentID': 22},
+ ...
+ {'raceid': 4, 'NetworkId': 2, 'CatchmentID': 14},
+ {'raceid': 5, 'NetworkId': 2, 'CatchmentID': 14},
+ {'raceid': 99, 'NetworkId': 2, 'CatchmentID': 14},
+ {'NetworkId': 2, 'CatchmentID': 17},
+ ...
+ ],
+ # Data!! But only for the overall category. Format is list
+ # of dicts. Each obs' fields are labelled, so we could easily
+ # convert this to dataframe.
+ 'default_data': [
+ {'networkid': 1, 'catchmentid': 22, 'seasonid': 49, 'ageid': 0, 'sexid': 0, 'raceid': 1, 'rate': 4.3, 'weeklyrate': 1.7, 'mmwrid': 2493},
+ {'networkid': 1, 'catchmentid': 22, 'seasonid': 49, 'ageid': 0, 'sexid': 0, 'raceid': 1, 'rate': 20.3, 'weeklyrate': 0.1, 'mmwrid': 2513},
+ {'networkid': 1, 'catchmentid': 22, 'seasonid': 49, 'ageid': 0, 'sexid': 0, 'raceid': 1, 'rate': 20.6, 'weeklyrate': 0.1, 'mmwrid': 2516},
+ {'networkid': 1, 'catchmentid': 22, 'seasonid': 49, 'ageid': 0, 'sexid': 0, 'raceid': 1, 'rate': 20.7, 'weeklyrate': 0.0, 'mmwrid': 2519},
+ {'networkid': 1, 'catchmentid': 22, 'seasonid': 49, 'ageid': 0, 'sexid': 0, 'raceid': 2, 'rate': 11.6, 'weeklyrate': 3.6, 'mmwrid': 2493},
+ {'networkid': 1, 'catchmentid': 22, 'seasonid': 49, 'ageid': 0, 'sexid': 0, 'raceid': 2, 'rate': 39.6, 'weeklyrate': 0.3, 'mmwrid': 2513},
+ {'networkid': 1, 'catchmentid': 22, 'seasonid': 49, 'ageid': 0, 'sexid': 0, 'raceid': 2, 'rate': 40.7, 'weeklyrate': 0.5, 'mmwrid': 2516},
+ {'networkid': 1, 'catchmentid': 22, 'seasonid': 49, 'ageid': 0, 'sexid': 0, 'raceid': 2, 'rate': 41.3, 'weeklyrate': 0.1, 'mmwrid': 2519},
+ {'networkid': 1, 'catchmentid': 22, 'seasonid': 49, 'ageid': 0, 'sexid': 0, 'raceid': 3, 'rate': 12.8, 'weeklyrate': 4.8, 'mmwrid': 2493},
+ {'networkid': 1, 'catchmentid': 22, 'seasonid': 49, 'ageid': 0, 'sexid': 0, 'raceid': 3, 'rate': 36.0, 'weeklyrate': 0.1, 'mmwrid': 2513},
+ ...
+ ],
+ # Mapping each mmwrid to a week number, season, and date. Could use this instead of our current epoch-based function.
+ 'mmwr': [
+ ...,
+ {'mmwrid': 2828, 'weekend': '2016-03-12', 'weeknumber': 10, 'weekstart': '2016-03-06', 'year': 2016, 'yearweek': 201610, 'seasonid': 55, 'label': 'Mar-12-2016', 'weekendlabel': 'Mar 12, 2016', 'weekendlabel2': 'Mar-12-2016'},
+ {'mmwrid': 2885, 'weekend': '2017-04-15', 'weeknumber': 15, 'weekstart': '2017-04-09', 'year': 2017, 'yearweek': 201715, 'seasonid': 56, 'label': 'Apr-15-2017', 'weekendlabel': 'Apr 15, 2017', 'weekendlabel2': 'Apr-15-2017'},
+ {'mmwrid': 2911, 'weekend': '2017-10-14', 'weeknumber': 41, 'weekstart': '2017-10-08', 'year': 2017, 'yearweek': 201741, 'seasonid': 57, 'label': 'Oct-14-2017', 'weekendlabel': 'Oct 14, 2017', 'weekendlabel2': 'Oct-14-2017'},
+ {'mmwrid': 2928, 'weekend': '2018-02-10', 'weeknumber': 6, 'weekstart': '2018-02-04', 'year': 2018, 'yearweek': 201806, 'seasonid': 57, 'label': 'Feb-10-2018', 'weekendlabel': 'Feb 10, 2018', 'weekendlabel2': 'Feb-10-2018'},
+ {'mmwrid': 2974, 'weekend': '2018-12-29', 'weeknumber': 52, 'weekstart': '2018-12-23', 'year': 2018, 'yearweek': 201852, 'seasonid': 58, 'label': 'Dec-29-2018', 'weekendlabel': 'Dec 29, 2018', 'weekendlabel2': 'Dec-29-2018'},
+ {'mmwrid': 3031, 'weekend': '2020-02-01', 'weeknumber': 5, 'weekstart': '2020-01-26', 'year': 2020, 'yearweek': 202005, 'seasonid': 59, 'label': 'Feb-01-2020', 'weekendlabel': 'Feb 01, 2020', 'weekendlabel2': 'Feb-01-2020'},
+ {'mmwrid': 3037, 'weekend': '2020-03-14', 'weeknumber': 11, 'weekstart': '2020-03-08', 'year': 2020, 'yearweek': 202011, 'seasonid': 59, 'label': 'Mar-14-2020', 'weekendlabel': 'Mar 14, 2020', 'weekendlabel2': 'Mar-14-2020'},
+ {'mmwrid': 3077, 'weekend': '2020-12-19', 'weeknumber': 51, 'weekstart': '2020-12-13', 'year': 2020, 'yearweek': 202051, 'seasonid': 60, 'label': 'Dec-19-2020', 'weekendlabel': 'Dec 19, 2020', 'weekendlabel2': 'Dec-19-2020'},
+ {'mmwrid': 3140, 'weekend': '2022-03-05', 'weeknumber': 9, 'weekstart': '2022-02-27', 'year': 2022, 'yearweek': 202209, 'seasonid': 61, 'label': 'Mar-05-2022', 'weekendlabel': 'Mar 05, 2022', 'weekendlabel2': 'Mar-05-2022'},
+ {'mmwrid': 3183, 'weekend': '2022-12-31', 'weeknumber': 52, 'weekstart': '2022-12-25', 'year': 2022, 'yearweek': 202252, 'seasonid': 62, 'label': 'Dec-31-2022', 'weekendlabel': 'Dec 31, 2022', 'weekendlabel2': 'Dec-31-2022'},
+ ]
+}
diff --git a/src/acquisition/flusurv/old_grasp_location_result.json b/src/acquisition/flusurv/old_grasp_location_result.json
new file mode 100644
index 000000000..6ef4952e8
--- /dev/null
+++ b/src/acquisition/flusurv/old_grasp_location_result.json
@@ -0,0 +1,42 @@
+### Old location-specific API response from https://gis.cdc.gov/GRASP/Flu3/PostPhase03GetData?appVersion=Public
+# with payload
+# {
+# "appversion": "Public",
+# "networkid": location_code[0],
+# "cacthmentid": location_code[1],
+# }
+{
+ 'busdata': {
+ 'datafields': ['mmwrid', 'weeknumber', 'rate', 'weeklyrate'],
+ "dataseries": [
+ {'season': 55, 'age': 8, 'data': [[2806, 40, 0.7, 0.7], [2807, 41, 0.7, 0], [2808, 42, 1.4, 0.7], [2809, 43, 1.4, 0], [2810, 44, 2.1, 0.7], [2811, 45, 2.1, 0], [2812, 46, 2.1, 0], [2813, 47, 2.1, 0], [2814, 48, 2.8, 0.7], [2815, 49, 4.2, 1.4], [2816, 50, 4.2, 0], [2817, 51, 6.4, 2.1], [2818, 52, 8.5, 2.1], [2819, 1, 13.4, 4.9], [2820, 2, 17, 3.5], [2821, 3, 20.5, 3.5], [2822, 4, 26.2, 5.7], [2823, 5, 30.4, 4.2], [2824, 6, 40.3, 9.9], [2825, 7, 47.4, 7.1], [2826, 8, 53.7, 6.4], [2827, 9, 63.6, 9.9], [2828, 10, 74.9, 11.3], [2829, 11, 82, 7.1], [2830, 12, 91.2, 9.2], [2831, 13, 98.3, 7.1], [2832, 14, 103.9, 5.7], [2833, 15, 106.8, 2.8], [2834, 16, 109.6, 2.8], [2835, 17, 111.7, 2.1]]},
+ {'season': 57, 'age': 2, 'data': [[2910, 40, 0, 0], [2911, 41, 0, 0], [2912, 42, 0, 0], [2913, 43, 0, 0], [2914, 44, 0.2, 0.2], [2915, 45, 0.4, 0.2], [2916, 46, 0.8, 0.4], [2917, 47, 0.8, 0], [2918, 48, 0.8, 0], [2919, 49, 1.3, 0.6], [2920, 50, 1.7, 0.4], [2921, 51, 1.9, 0.2], [2922, 52, 3.1, 1.1], [2923, 1, 4.8, 1.7], [2924, 2, 6.9, 2.1], [2925, 3, 7.9, 1], [2926, 4, 9.2, 1.3], [2927, 5, 10.5, 1.3], [2928, 6, 11.3, 0.8], [2929, 7, 11.5, 0.2], [2930, 8, 12.6, 1.1], [2931, 9, 13.8, 1.1], [2932, 10, 15.1, 1.3], [2933, 11, 15.9, 0.8], [2934, 12, 16.3, 0.4], [2935, 13, 16.7, 0.4], [2936, 14, 16.9, 0.2], [2937, 15, 16.9, 0], [2938, 16, 16.9, 0], [2939, 17, 17, 0.2]]},
+ ...
+ ]
+ },
+ 'seasons': [
+ {'description': 'Season 2003-04', 'endweek': 2231, 'label': '2003-04', 'seasonid': 43, 'startweek': 2179, 'color': 'Dark Purple', 'color_hexvalue': '#4A298B'},
+ {'description': 'Season 2004-05', 'endweek': 2283, 'label': '2004-05', 'seasonid': 44, 'startweek': 2232, 'color': 'Brown', 'color_hexvalue': '#76522E'},
+ {'description': 'Season 2005-06', 'endweek': 2335, 'label': '2005-06', 'seasonid': 45, 'startweek': 2284, 'color': 'Salmon', 'color_hexvalue': '#C76751'},
+ {'description': 'Season 2006-07', 'endweek': 2387, 'label': '2006-07', 'seasonid': 46, 'startweek': 2336, 'color': 'Purple', 'color_hexvalue': '#B92CC6'},
+ {'description': 'Season 2007-08', 'endweek': 2439, 'label': '2007-08', 'seasonid': 47, 'startweek': 2388, 'color': 'Blue', 'color_hexvalue': '#2A44C8'},
+ {'description': 'Season 2008-09', 'endweek': 2487, 'label': '2008-09', 'seasonid': 48, 'startweek': 2440, 'color': 'Green', 'color_hexvalue': '#299A42'},
+ {'description': 'Season 2009-10', 'endweek': 2544, 'label': '2009-10', 'seasonid': 49, 'startweek': 2488, 'color': 'Red', 'color_hexvalue': '#A12732'},
+ {'description': 'Season 2010-11', 'endweek': 2596, 'label': '2010-11', 'seasonid': 50, 'startweek': 2545, 'color': 'Mustard', 'color_hexvalue': '#BDAA2A'},
+ {'description': 'Season 2011-12', 'endweek': 2648, 'label': '2011-12', 'seasonid': 51, 'startweek': 2597, 'color': 'Light Blue', 'color_hexvalue': '#3289A4'},
+ {'description': 'Season 2012-13', 'endweek': 2700, 'label': '2012-13', 'seasonid': 52, 'startweek': 2649, 'color': 'Grey', 'color_hexvalue': '#5E5E5E'},
+ {'description': 'Season 2013-14', 'endweek': 2752, 'label': '2013-14', 'seasonid': 53, 'startweek': 2701, 'color': 'Light Blue', 'color_hexvalue': '#42B5C8'},
+ {'description': 'Season 2014-15', 'endweek': 2805, 'label': '2014-15', 'seasonid': 54, 'startweek': 2753, 'color': 'Mint', 'color_hexvalue': '#4EC87B'},
+ {'description': 'Season 2015-16', 'endweek': 2857, 'label': '2015-16', 'seasonid': 55, 'startweek': 2806, 'color': 'Orange', 'color_hexvalue': '#C7852E'},
+ {'description': 'Season 2016-17', 'endweek': 2909, 'label': '2016-17', 'seasonid': 56, 'startweek': 2858, 'color': 'Purple', 'color_hexvalue': '#7F42A9'},
+ {'description': 'Season 2017-18', 'endweek': 2961, 'label': '2017-18', 'seasonid': 57, 'startweek': 2910, 'color': 'Lime', 'color_hexvalue': '#8AC73C'},
+ {'description': 'Season 2018-19', 'endweek': 3013, 'label': '2018-19', 'seasonid': 58, 'startweek': 2962, 'color': 'Brown', 'color_hexvalue': '#A06C3A'},
+ {'description': 'Season 2019-20', 'endweek': 3065, 'label': '2019-20', 'seasonid': 59, 'startweek': 3014, 'color': 'Light Orange', 'color_hexvalue': '#FFCF48'}
+ ],
+ 'mmwr': [
+ {'mmwrid': 2179, 'weekend': '2003-10-04', 'weeknumber': 40, 'weekstart': '2003-09-28', 'year': 2003, 'yearweek': 200340, 'seasonid': 43, 'label': '40', 'weekendlabel': 'Oct 04, 2003', 'weekendlabel2': 'Oct-04-2003'},
+ {'mmwrid': 2180, 'weekend': '2003-10-11', 'weeknumber': 41, 'weekstart': '2003-10-05', 'year': 2003, 'yearweek': 200341, 'seasonid': 43, 'label': '', 'weekendlabel': 'Oct 11, 2003', 'weekendlabel2': 'Oct-11-2003'},
+ {'mmwrid': 2181, 'weekend': '2003-10-18', 'weeknumber': 42, 'weekstart': '2003-10-12', 'year': 2003, 'yearweek': 200342, 'seasonid': 43, 'label': '', 'weekendlabel': 'Oct 18, 2003', 'weekendlabel2': 'Oct-18-2003'},
+ ...
+ ]
+}
diff --git a/src/acquisition/flusurv/old_grasp_result.json b/src/acquisition/flusurv/old_grasp_result.json
new file mode 100644
index 000000000..14fb72b66
--- /dev/null
+++ b/src/acquisition/flusurv/old_grasp_result.json
@@ -0,0 +1,89 @@
+### Old API response from https://gis.cdc.gov/GRASP/Flu3/GetPhase03InitApp?appVersion=Public
+{
+ 'loaddatetime': 'Mar 20, 2021',
+ 'disclaimer': {
+ 'id': 1,
+ 'splashscreensisclaimersext': 'The Influenza Hospitalization Surveillance Network (FluSurv-NET) conducts population-based surveillance for laboratory-confirmed influenza-associated hospitalizations in children (persons younger than 18 years) and adults. The current network covers over 70 counties in the 10 Emerging Infections Program (EIP) states (CA, CO, CT, GA, MD, MN, NM, NY, OR, and TN) and three additional states (MI, OH, and UT). The network represents approximately 8.5% of US population (~27 million people).
Cases are identified by reviewing hospital, laboratory, and admission databases and infection control logs for patients hospitalized during the influenza season with a documented positive influenza test (i.e., viral culture, direct/indirect fluorescent antibody assay (DFA/IFA), reverse transcription-polymerase chain reaction (RT-PCR), or a rapid influenza diagnostic test (RIDT)).
Data gathered are used to estimate age-specific hospitalization rates on a weekly basis, and describe characteristics of persons hospitalized with severe influenza illness. Laboratory-confirmation is dependent on clinician-ordered influenza testing. Therefore, the rates provided are likely to be underestimated as influenza-related hospitalizations can be missed, either because testing is not performed, or because cases may be attributed to other causes of pneumonia or other common influenza-related complications.
FluSurv-NET hospitalization data are preliminary and subject to change as more data become available. Please use the following citation when referencing these data: “FluView: Influenza Hospitalization Surveillance Network, Centers for Disease Control and Prevention. WEBSITE. Accessed on DATE”.',
+ 'pagedisclaimertext': "The Influenza Hospitalization Surveillance Network (FluSurv-NET) data are preliminary and subject to change as more data become available. \r\n All incidence rates are unadjusted. FluSurv-NET conducts population-based surveillance for laboratory-confirmed influenza associated \r\n hospitalizations in children <18 years of age (since 2003-2004 influenza season) and adults (since 2005-2006 influenza season). \r\n The FluSurv-NET covers over 70 counties in the 10 Emerging Infections Program (EIP) states (CA, CO, CT, GA, MD, MN, NM, NY, OR, TN) \r\n and additional Influenza Hospitalization Surveillance Project (IHSP) states. The IHSP began during the 2009-2010 season to enhance \r\n surveillance during the 2009 H1N1 pandemic. IHSP sites included IA, ID, MI, OK and SD during 2009-2010 season; ID, MI, OH, OK, RI, \r\n and UT during the 2010-2011 season; MI, OH, RI, and UT during the 2011-2012 season; IA, MI, OH, RI, and UT during the 2012-2013 season; and MI, OH, and UT during the 2013-2014 season and later. Cumulative and weekly unadjusted incidence rates (per 100,000 population) are calculated using the National Center for Health Statistics' (NCHS) \r\n population estimates for the counties included in the surveillance catchment area. The rates provided are likely to be underestimated as \r\n influenza-associated hospitalizations can be missed if influenza is not suspected and tested for.",
+ 'surveillancehelptext': 'The Emerging Infections Program (EIP) has conducted ongoing population-based influenza-hospitalization surveillance since the 2003-2004 season. EIP sites include counties within CA, CO, CT, GA, MD, MN, NM, NY, OR, TN. The Influenza Hospitalization Surveillance Project (IHSP) began during the 2009-2010 season to enhance surveillance during the 2009 H1N1 pandemic. IHSP sites included counties within IA, ID, MI, OK and SD during 2009-2010 season; ID, MI, OH, OK, RI, and UT during the 2010-2011 season; MI, OH, RI, and UT during the 2011-2012 season; IA, MI, OH, RI, and UT during the 2012-2013 season; and MI, OH, and UT during the 2013-2014, 2014-15 and 2015-2016 seasons. Together, the EIP and IHSP sites comprise the Influenza Hospitalization Surveillance Network (FluSurv-NET). The FluSurv-NET represents approximately 9% of the US population (~27 million people). FluSurv-NET hospitalization data are preliminary and subject to change as more data become available. All incidence rates are unadjusted.',
+ 'groupbyhelptext': 'Age Groups: During the 2003-2004 and 2004-2005 seasons, Emerging Infections Program (EIP) sites conducted population-based influenza-hospitalization surveillance for pediatric (persons younger than 18 years) cases only. Surveillance for adults began during the 2005-2006 season and all-age surveillance for laboratory-confirmed influenza associated hospitalizations has been ongoing since then. Seasons: Most calendar years can be divided into 52 epidemiologic weeks (MMWR weeks), but occasionally some years will have 53 weeks. For the Influenza Surveillance Network (FluSurv-Net), the influenza season is normally from October 1 through April 30 (MMWR Week 40-17). However, due to the onset of the influenza A (H1N1)pdm09 pandemic in spring of 2009, the 2008-2009 influenza season ended April 14, 2009 and the 2009-2010 season began September 1, 2009 (MMWR Week 35). The number of sites contributing to the influenza-hospitalization surveillance network has changed over the years. Please, refer to the Surveillance Area Help Button for more detailed information.',
+ 'downloaddatadisclaimertext': "The Influenza Hospitalization Surveillance Network (FluSurv-NET) data are preliminary and subject to change as more data become available. All incidence rates are unadjusted. FluSurv-NET conducts population-based surveillance for laboratory-confirmed influenza related hospitalizations in children <18 years of age (since 2003-2004 influenza season) and adults (since 2005-2006 influenza season). The FluSurv-NET covers over 70 counties in the 10 Emerging Infections Program (EIP) states (CA, CO, CT, GA, MD, MN, NM, NY, OR, TN) and additional Influenza Hospitalization Surveillance Project (IHSP) states. The IHSP began during the 2009-2010 season to enhance surveillance during the 2009 H1N1 pandemic. IHSP sites included IA, ID, MI, OK and SD during 2009-2010 season; ID, MI, OH, OK, RI, and UT during the 2010-2011 season; MI, OH, RI, and UT during the 2011-2012 season; IA, MI, OH, RI, and UT during the 2012-2013 season; and MI, OH, and UT during the 2013-2014 , 2014-2015 and 2015-2016 seasons. Cumulative and weekly unadjusted incidence rates (per 100,000 population) are calculated using the National Center for Health Statistics' (NCHS) population estimates for the counties included in the surveillance catchment area. The rates provided are likely to be underestimated as influenza-related hospitalizations can be missed, either because testing is not performed, or because cases may be attributed to other causes of pneumonia or other common influenza-related complications."
+ },
+ 'networks': [
+ {'networkid': 1, 'name': 'FluSurv-NET'},
+ {'networkid': 2, 'name': 'EIP'},
+ {'networkid': 3, 'name': 'IHSP'}
+ ],
+ 'catchments': [
+ {'networkid': 1, 'name': 'FluSurv-NET', 'area': 'Entire Network', 'catchmentid': '22', 'beginseasonid': 49, 'endseasonid': 51},
+
+ {'networkid': 2, 'name': 'EIP', 'area': 'California', 'catchmentid': '1', 'beginseasonid': 43, 'endseasonid': 51},
+ {'networkid': 2, 'name': 'EIP', 'area': 'Colorado', 'catchmentid': '2', 'beginseasonid': 43, 'endseasonid': 51},
+ {'networkid': 2, 'name': 'EIP', 'area': 'Connecticut', 'catchmentid': '3', 'beginseasonid': 43, 'endseasonid': 51},
+ {'networkid': 2, 'name': 'EIP', 'area': 'Entire Network', 'catchmentid': '22', 'beginseasonid': 49, 'endseasonid': 51},
+ {'networkid': 2, 'name': 'EIP', 'area': 'Georgia', 'catchmentid': '4', 'beginseasonid': 43, 'endseasonid': 51},
+ {'networkid': 2, 'name': 'EIP', 'area': 'Maryland', 'catchmentid': '7', 'beginseasonid': 43, 'endseasonid': 51},
+ {'networkid': 2, 'name': 'EIP', 'area': 'Minnesota', 'catchmentid': '9', 'beginseasonid': 43, 'endseasonid': 51},
+ {'networkid': 2, 'name': 'EIP', 'area': 'New Mexico', 'catchmentid': '11', 'beginseasonid': 43, 'endseasonid': 51},
+ {'networkid': 2, 'name': 'EIP', 'area': 'New York - Albany', 'catchmentid': '13', 'beginseasonid': 43, 'endseasonid': 51},
+ {'networkid': 2, 'name': 'EIP', 'area': 'New York - Rochester', 'catchmentid': '14', 'beginseasonid': 43, 'endseasonid': 51},
+ {'networkid': 2, 'name': 'EIP', 'area': 'Oregon', 'catchmentid': '17', 'beginseasonid': 43, 'endseasonid': 51},
+ {'networkid': 2, 'name': 'EIP', 'area': 'Tennessee', 'catchmentid': '20', 'beginseasonid': 43, 'endseasonid': 51},
+
+ {'networkid': 3, 'name': 'IHSP', 'area': 'Entire Network', 'catchmentid': '22', 'beginseasonid': 49, 'endseasonid': 51},
+ {'networkid': 3, 'name': 'IHSP', 'area': 'Idaho', 'catchmentid': '6', 'beginseasonid': 49, 'endseasonid': 51},
+ {'networkid': 3, 'name': 'IHSP', 'area': 'Iowa', 'catchmentid': '5', 'beginseasonid': 49, 'endseasonid': 51},
+ {'networkid': 3, 'name': 'IHSP', 'area': 'Michigan', 'catchmentid': '8', 'beginseasonid': 49, 'endseasonid': 51},
+ {'networkid': 3, 'name': 'IHSP', 'area': 'Ohio', 'catchmentid': '15', 'beginseasonid': 50, 'endseasonid': 51},
+ {'networkid': 3, 'name': 'IHSP', 'area': 'Oklahoma', 'catchmentid': '16', 'beginseasonid': 49, 'endseasonid': 50},
+ {'networkid': 3, 'name': 'IHSP', 'area': 'Rhode Island', 'catchmentid': '18', 'beginseasonid': 50, 'endseasonid': 51},
+ {'networkid': 3, 'name': 'IHSP', 'area': 'South Dakota', 'catchmentid': '19', 'beginseasonid': 49, 'endseasonid': 49},
+ {'networkid': 3, 'name': 'IHSP', 'area': 'Utah', 'catchmentid': '21', 'beginseasonid': 50, 'endseasonid': 51}
+ ],
+ 'seasons': [
+ {'description': 'Season 2009-10', 'endweek': 2544, 'label': '2009-10', 'seasonid': 49, 'startweek': 2488, 'color': 'Red', 'color_hexvalue': '#A12732'},
+ {'description': 'Season 2010-11', 'endweek': 2596, 'label': '2010-11', 'seasonid': 50, 'startweek': 2545, 'color': 'Mustard', 'color_hexvalue': '#BDAA2A'},
+ {'description': 'Season 2011-12', 'endweek': 2648, 'label': '2011-12', 'seasonid': 51, 'startweek': 2597, 'color': 'Light Blue', 'color_hexvalue': '#3289A4'},
+ {'description': 'Season 2012-13', 'endweek': 2700, 'label': '2012-13', 'seasonid': 52, 'startweek': 2649, 'color': 'Grey', 'color_hexvalue': '#5E5E5E'},
+ {'description': 'Season 2013-14', 'endweek': 2752, 'label': '2013-14', 'seasonid': 53, 'startweek': 2701, 'color': 'Light Blue', 'color_hexvalue': '#42B5C8'},
+ {'description': 'Season 2014-15', 'endweek': 2805, 'label': '2014-15', 'seasonid': 54, 'startweek': 2753, 'color': 'Mint', 'color_hexvalue': '#4EC87B'},
+ {'description': 'Season 2015-16', 'endweek': 2857, 'label': '2015-16', 'seasonid': 55, 'startweek': 2806, 'color': 'Orange', 'color_hexvalue': '#C7852E'},
+ {'description': 'Season 2016-17', 'endweek': 2909, 'label': '2016-17', 'seasonid': 56, 'startweek': 2858, 'color': 'Purple', 'color_hexvalue': '#7F42A9'},
+ {'description': 'Season 2017-18', 'endweek': 2961, 'label': '2017-18', 'seasonid': 57, 'startweek': 2910, 'color': 'Lime', 'color_hexvalue': '#8AC73C'},
+ {'description': 'Season 2018-19', 'endweek': 3013, 'label': '2018-19', 'seasonid': 58, 'startweek': 2962, 'color': 'Brown', 'color_hexvalue': '#A06C3A'},
+ {'description': 'Season 2019-20', 'endweek': 3065, 'label': '2019-20', 'seasonid': 59, 'startweek': 3014, 'color': 'Light Orange', 'color_hexvalue': '#FFCF48'}
+ ],
+ 'ages': [
+ {'label': '85+', 'ageid': 9, 'color_hexvalue': '#1f78b4'},
+ {'label': '75-84 yr', 'ageid': 8, 'color_hexvalue': '#CAB2D6'},
+ {'label': '65-74 yr', 'ageid': 7, 'color_hexvalue': '#A6CEE3'},
+ {'label': 'Overall', 'ageid': 6, 'color_hexvalue': '#000000'},
+ {'label': '65+ yr', 'ageid': 5, 'color_hexvalue': '#6AA61E'},
+ {'label': '50-64 yr', 'ageid': 4, 'color_hexvalue': '#E7298A'},
+ {'label': '18-49 yr', 'ageid': 3, 'color_hexvalue': '#4A298B'},
+ {'label': '5-17 yr', 'ageid': 2, 'color_hexvalue': '#D95F02'},
+ {'label': '0-4 yr', 'ageid': 1, 'color_hexvalue': '#1B9E77'}
+ ],
+ 'busdata': {
+ 'datafields': ['mmwrid', 'weeknumber', 'rate', 'weeklyrate'],
+ 'dataseries': [
+ ...,
+ {'season': 56, 'age': 4, 'data': [[2858, 40, 0.1, 0.1], [2859, 41, 0.2, 0.1], [2860, 42, 0.3, 0.1], [2861, 43, 0.5, 0.1], [2862, 44, 0.6, 0.1], [2863, 45, 0.8, 0.2], [2864, 46, 1, 0.2], [2865, 47, 1.4, 0.4], [2866, 48, 1.7, 0.4], [2867, 49, 2.3, 0.5], [2868, 50, 3.3, 1.1], [2869, 51, 4.8, 1.5], [2870, 52, 7.8, 2.9], [2871, 1, 11.7, 4], [2872, 2, 15.7, 3.9], [2873, 3, 19.5, 3.8], [2874, 4, 22.9, 3.4], [2875, 5, 26.3, 3.4], [2876, 6, 31.1, 4.8], [2877, 7, 36.1, 5], [2878, 8, 41.5, 5.3], [2879, 9, 44.7, 3.2], [2880, 10, 48, 3.3], [2881, 11, 50.9, 2.9], [2882, 12, 54, 3.1], [2883, 13, 57.3, 3.3], [2884, 14, 59.3, 2], [2885, 15, 60.8, 1.5], [2886, 16, 62, 1.2], [2887, 17, 62.7, 0.8]]},
+ {'season': 55, 'age': 8, 'data': [[2806, 40, 0.6, 0.6], [2807, 41, 1, 0.4], [2808, 42, 1.3, 0.3], [2809, 43, 1.3, 0], [2810, 44, 1.8, 0.5], [2811, 45, 2.3, 0.5], [2812, 46, 2.4, 0.1], [2813, 47, 2.4, 0], [2814, 48, 2.8, 0.4], [2815, 49, 3.2, 0.4], [2816, 50, 4, 0.8], [2817, 51, 5.5, 1.6], [2818, 52, 6.4, 0.9], [2819, 1, 8, 1.6], [2820, 2, 9.6, 1.6], [2821, 3, 10.9, 1.3], [2822, 4, 12.6, 1.8], [2823, 5, 14.8, 2.2], [2824, 6, 19.6, 4.7], [2825, 7, 25.1, 5.5], [2826, 8, 30.9, 5.8], [2827, 9, 41.4, 10.5], [2828, 10, 54.2, 12.8], [2829, 11, 63.5, 9.3], [2830, 12, 73.9, 10.4], [2831, 13, 83.5, 9.6], [2832, 14, 90.3, 6.8], [2833, 15, 95.6, 5.3], [2834, 16, 100.7, 5.1], [2835, 17, 103.7, 3]]},
+ {'season': 59, 'age': 11, 'data': [[3014, 40, 0, 0], [3015, 41, 0.1, 0], [3016, 42, 0.2, 0.1], [3017, 43, 0.2, 0], [3018, 44, 0.3, 0.1], [3019, 45, 0.5, 0.2], [3020, 46, 0.8, 0.3], [3021, 47, 1.1, 0.4], [3022, 48, 1.7, 0.5], [3023, 49, 2.5, 0.9], [3024, 50, 3.5, 1], [3025, 51, 4.8, 1.3], [3026, 52, 7.2, 2.4], [3027, 1, 10.2, 3], [3028, 2, 12.7, 2.5], [3029, 3, 14.7, 2], [3030, 4, 17.1, 2.3], [3031, 5, 19.9, 2.8], [3032, 6, 23.5, 3.6], [3033, 7, 25.7, 2.2], [3034, 8, 27.9, 2.2], [3035, 9, 30, 2], [3036, 10, 31.9, 1.9], [3037, 11, 33.2, 1.4], [3038, 12, 34.1, 0.8], [3039, 13, 34.2, 0.1], [3040, 14, 34.2, 0], [3041, 15, 34.2, 0], [3042, 16, 34.3, 0.1], [3043, 17, 34.3, 0]]},
+ {'season': 50, 'age': 4, 'data': [[2545, 40, 0.1, 0.1], [2546, 41, 0.1, 0.1], [2547, 42, 0.2, 0.1], [2548, 43, 0.2, 0.1], [2549, 44, 0.3, 0.1], [2550, 45, 0.3, 0.1], [2551, 46, 0.6, 0.2], [2552, 47, 0.7, 0.2], [2553, 48, 0.9, 0.2], [2554, 49, 1.2, 0.3], [2555, 50, 1.5, 0.3], [2556, 51, 2, 0.5], [2557, 52, 2.7, 0.7], [2558, 1, 3.6, 0.9], [2559, 2, 4.6, 1], [2560, 3, 5.9, 1.2], [2561, 4, 7.3, 1.4], [2562, 5, 8.9, 1.6], [2563, 6, 10.5, 1.6], [2564, 7, 12.7, 2.2], [2565, 8, 15.2, 2.5], [2566, 9, 17.2, 2], [2567, 10, 18.7, 1.5], [2568, 11, 19.9, 1.3], [2569, 12, 20.7, 0.8], [2570, 13, 21.2, 0.5], [2571, 14, 21.5, 0.4], [2572, 15, 21.7, 0.2], [2573, 16, 21.8, 0.1], [2574, 17, 21.9, 0.1]]},
+ {'season': 58, 'age': 1, 'data': [[2962, 40, 0.1, 0.1], [2963, 41, 0.3, 0.2], [2964, 42, 0.3, 0.1], [2965, 43, 0.5, 0.2], [2966, 44, 1, 0.5], [2967, 45, 1.4, 0.4], [2968, 46, 1.7, 0.3], [2969, 47, 2.3, 0.6], [2970, 48, 3.6, 1.3], [2971, 49, 5.5, 1.9], [2972, 50, 8.5, 3], [2973, 51, 12.3, 3.8], [2974, 52, 17.7, 5.4], [2975, 1, 21.7, 3.9], [2976, 2, 24.9, 3.2], [2977, 3, 27.4, 2.5], [2978, 4, 30.5, 3.1], [2979, 5, 34.5, 4.1], [2980, 6, 37.6, 3.1], [2981, 7, 41.6, 4], [2982, 8, 46.2, 4.6], [2983, 9, 50.2, 3.9], [2984, 10, 54.9, 4.7], [2985, 11, 59.2, 4.3], [2986, 12, 62.6, 3.4], [2987, 13, 65.3, 2.7], [2988, 14, 67.6, 2.3], [2989, 15, 68.9, 1.3], [2990, 16, 69.8, 0.9], [2991, 17, 70.9, 1]]},
+ {'season': 52, 'age': 10, 'data': [[2649, 40, 0, 0], [2649, 40, 0, 0], [2650, 41, 0, 0], [2650, 41, 0, 0], [2651, 42, 0.1, 0], [2651, 42, 0, 0], [2652, 43, 0.1, 0], [2652, 43, 0, 0], [2653, 44, 0.1, 0], [2653, 44, 0, 0], [2654, 45, 0.2, 0.1], [2654, 45, 0.1, 0], [2655, 46, 0.5, 0.1], [2655, 46, 0.1, 0], [2656, 47, 0.8, 0.2], [2656, 47, 0.2, 0], [2657, 48, 1.3, 0.2], [2657, 48, 0.3, 0], [2658, 49, 2.3, 0.7], [2658, 49, 0.5, 0.1], [2659, 50, 3.7, 0.7], [2659, 50, 0.7, 0.1], [2660, 51, 5.3, 0.9], [2660, 51, 1.1, 0.2], [2661, 52, 7.4, 1.2], [2661, 52, 1.5, 0.2], [2662, 1, 9.9, 1.3], [2662, 1, 1.9, 0.2], [2663, 2, 12.2, 1.1], [2663, 2, 2.3, 0.2], [2664, 3, 14.4, 1], [2664, 3, 2.6, 0.2], [2665, 4, 16.3, 0.9], [2665, 4, 2.9, 0.2], [2666, 5, 17.8, 0.6], [2666, 5, 3.2, 0.1], [2667, 6, 19, 0.5], [2667, 6, 3.3, 0.1], [2668, 7, 20, 0.6], [2668, 7, 3.5, 0.1], [2669, 8, 21.1, 0.5], [2669, 8, 3.7, 0.1], [2670, 9, 22, 0.4], [2670, 9, 3.8, 0.1], [2671, 10, 22.8, 0.4], [2671, 10, 4, 0.1], [2672, 11, 23.4, 0.3], [2672, 11, 4.1, 0], [2673, 12, 23.8, 0.2], [2673, 12, 4.1, 0], [2674, 13, 24.2, 0.2], [2674, 13, 4.2, 0], [2675, 14, 24.6, 0.2], [2675, 14, 4.2, 0], [2676, 15, 24.9, 0.1], [2676, 15, 4.3, 0], [2677, 16, 25.1, 0.1], [2677, 16, 4.3, 0], [2678, 17, 25.2, 0.1], [2678, 17, 4.3, 0]]},
+ {'season': 54, 'age': 7, 'data': [[2753, 40, 0.2, 0.2], [2754, 41, 0.4, 0.1], [2755, 42, 0.9, 0.5], [2756, 43, 1, 0.1], [2757, 44, 1.1, 0.1], [2758, 45, 1.6, 0.4], [2759, 46, 2, 0.5], [2760, 47, 2.9, 0.9], [2761, 48, 5.3, 2.3], [2762, 49, 9.9, 4.7], [2763, 50, 17.6, 7.7], [2764, 51, 30.1, 12.5], [2765, 52, 49.4, 19.3], [2766, 53, 69, 19.5], [2767, 1, 83.2, 14.2], [2768, 2, 91.4, 8.2], [2769, 3, 98.6, 7.3], [2770, 4, 104.6, 5.9], [2771, 5, 110.9, 6.3], [2772, 6, 116, 5.2], [2773, 7, 119.2, 3.1], [2774, 8, 122.3, 3.2], [2775, 9, 124.5, 2.1], [2776, 10, 127.5, 3], [2777, 11, 130.1, 2.7], [2778, 12, 132.4, 2.3], [2779, 13, 135, 2.6], [2780, 14, 137.7, 2.7], [2781, 15, 139.1, 1.4], [2782, 16, 140.3, 1.1], [2783, 17, 141, 0.8]]}
+ ]
+ },
+ 'mmwr': [
+ ...,
+ {'mmwrid': 3038, 'weekend': '2020-03-21', 'weeknumber': 12, 'weekstart': '2020-03-15', 'year': 2020, 'yearweek': 202012, 'seasonid': 59, 'label': '', 'weekendlabel': 'Mar 21, 2020', 'weekendlabel2': 'Mar-21-2020'},
+ {'mmwrid': 3039, 'weekend': '2020-03-28', 'weeknumber': 13, 'weekstart': '2020-03-22', 'year': 2020, 'yearweek': 202013, 'seasonid': 59, 'label': '', 'weekendlabel': 'Mar 28, 2020', 'weekendlabel2': 'Mar-28-2020'},
+ {'mmwrid': 3040, 'weekend': '2020-04-04', 'weeknumber': 14, 'weekstart': '2020-03-29', 'year': 2020, 'yearweek': 202014, 'seasonid': 59, 'label': '', 'weekendlabel': 'Apr 04, 2020', 'weekendlabel2': 'Apr-04-2020'},
+ {'mmwrid': 3041, 'weekend': '2020-04-11', 'weeknumber': 15, 'weekstart': '2020-04-05', 'year': 2020, 'yearweek': 202015, 'seasonid': 59, 'label': '', 'weekendlabel': 'Apr 11, 2020', 'weekendlabel2': 'Apr-11-2020'},
+ {'mmwrid': 3042, 'weekend': '2020-04-18', 'weeknumber': 16, 'weekstart': '2020-04-12', 'year': 2020, 'yearweek': 202016, 'seasonid': 59, 'label': '', 'weekendlabel': 'Apr 18, 2020', 'weekendlabel2': 'Apr-18-2020'},
+ {'mmwrid': 3043, 'weekend': '2020-04-25', 'weeknumber': 17, 'weekstart': '2020-04-19', 'year': 2020, 'yearweek': 202017, 'seasonid': 59, 'label': '17', 'weekendlabel': 'Apr 25, 2020', 'weekendlabel2': 'Apr-25-2020'}
+ ]
+}