From 42249754f921206d7e219f033e51015acc317e58 Mon Sep 17 00:00:00 2001 From: Jonathan Bloedow Date: Wed, 13 Sep 2023 20:36:16 -0700 Subject: [PATCH 01/28] Cache latest working example with 2-D sweep. --- .../from_files/config_comps_ref.json | 10 +++--- .../blantyre_noHINT/from_files/example.py | 35 ++++++++++++++----- 2 files changed, 32 insertions(+), 13 deletions(-) diff --git a/examples/blantyre_noHINT/from_files/config_comps_ref.json b/examples/blantyre_noHINT/from_files/config_comps_ref.json index 9482ced..bf9f654 100644 --- a/examples/blantyre_noHINT/from_files/config_comps_ref.json +++ b/examples/blantyre_noHINT/from_files/config_comps_ref.json @@ -13,14 +13,14 @@ "Acquisition_Blocking_Immunity_Decay_Rate": 0.1, "Acquisition_Blocking_Immunity_Duration_Before_Decay": 60, - "Age_Initialization_Distribution_Type": "DISTRIBUTION_COMPLEX", + "Age_Initialization_Distribution_Type": "DISTRIBUTION_SIMPLE", "Air_Temperature_Filename": "", "Air_Temperature_Offset": 0, "Air_Temperature_Variance": 2, "Animal_Reservoir_Type": "NO_ZOONOSIS", "Base_Air_Temperature": 30, "Base_Incubation_Period": 3000000, - "Base_Individual_Sample_Rate": 0.25, + "Base_Individual_Sample_Rate": 0.1, "Base_Infectious_Period": 70000000, "Base_Infectivity": 0.3, "Base_Land_Temperature": 30, @@ -38,11 +38,11 @@ "Climate_Model": "CLIMATE_OFF", "Climate_Update_Resolution": "CLIMATE_UPDATE_DAY", "Config_Name": "149_Typhoid", - "Death_Rate_Dependence": "NONDISEASE_MORTALITY_BY_AGE_AND_GENDER", + "Death_Rate_Dependence": "NONDISEASE_MORTALITY_BY_YEAR_AND_AGE_FOR_EACH_GENDER", "Default_Geography_Initial_Node_Population": 1000, "Default_Geography_Torus_Size": 10, "Demographics_Filenames": [ - "TestDemographics_Mystery_Fert.json" + "demographics.json" ], "Enable_Absolute_Time": "NO", "Enable_Aging": 1, @@ -142,9 +142,9 @@ "Typhoid_Carrier_Removal_Year": 2500, "Typhoid_Chronic_Relative_Infectiousness": 0.5, "Typhoid_Contact_Exposure_Rate": 0.44535910269531453, - "Environmental_Cutoff_Days": 1, "Typhoid_Environmental_Exposure_Rate": 0.24619971394455994, "__Typhoid_Environmental_Exposure_Rate": 0.024619971394455994, + "Environmental_Cutoff_Days": 1, "Environmental_Peak_Start": 287.2811494864098, "Environmental_Ramp_Down_Duration": 1, "Environmental_Ramp_Up_Duration": 1, diff --git a/examples/blantyre_noHINT/from_files/example.py b/examples/blantyre_noHINT/from_files/example.py index 0ad9471..c0f40b6 100755 --- a/examples/blantyre_noHINT/from_files/example.py +++ b/examples/blantyre_noHINT/from_files/example.py @@ -18,15 +18,33 @@ import manifest +sim_idx = 0 def update_sim_random_seed(simulation, value): - return {"Run_Number": value} + global sim_idx + sim_idx += 1 + simulation.task.config["Run_Number"] = value + return {"Run_Number": value, "idx": sim_idx } + +def update_sim_param(simulation, value): + simulation.task.config["Typhoid_Acute_Infectiousness"] = 13435+value + return {"Typhoid_Acute_Infectiousness": 13435+value} def run(): # Create a platform # Show how to dynamically set priority and node_group platform = Platform("SLURM", node_group="idm_48cores", priority="Highest") - task = EMODTask.from_files(config_path="config_comps_ref.json", eradication_path=manifest.eradication_path, campaign_path="campaign_routine_exp.json", demographics_paths=["TestDemographics_Mystery_Fert.json"], ep4_path=None) + #task = EMODTask.from_files(config_path="config_comps_ref.json", eradication_path=manifest.eradication_path, campaign_path="campaign_routine_exp.json", demographics_paths=["TestDemographics_Mystery_Fert.json"], ep4_path=None) + #task = EMODTask.from_files(config_path="config_comps_ref.json", eradication_path=manifest.eradication_path, campaign_path="campaign_routine_exp.json", demographics_paths=["demographics.json"], ep4_path=None) + #task = EMODTask.from_files(config_path="config_py.json", eradication_path=manifest.eradication_path, campaign_path="campaign_routine_exp.json", demographics_paths=["demographics.json"], ep4_path=None) + #task = EMODTask.from_files(config_path="config.json", eradication_path=manifest.eradication_path, campaign_path="campaign_routine_exp.json", demographics_paths=["demographics.json"], ep4_path=None) + #task = EMODTask.from_files(config_path="config_literal_5mods.json", eradication_path=manifest.eradication_path, campaign_path="campaign_baseline.json", demographics_paths=["TestDemographics_Blantyre.json"], ep4_path=None) + #task = EMODTask.from_files(config_path="config_june242019.json", eradication_path=manifest.eradication_path, campaign_path="campaign_june242019.json", demographics_paths=["TestDemographics_Mystery_Fert.json"], ep4_path=None) + #task = EMODTask.from_files(config_path="config_june242019_plus_to_params.json", eradication_path=manifest.eradication_path, campaign_path="campaign_june242019.json", demographics_paths=["TestDemographics_Mystery_Fert.json"], ep4_path=None) + #task = EMODTask.from_files(config_path="config_june242019_seasonal.json", eradication_path=manifest.eradication_path, campaign_path="campaign_june242019.json", demographics_paths=["TestDemographics_Mystery_Fert.json"], ep4_path=None) + #task = EMODTask.from_files(config_path="config_june242019_seasonal_to.json", eradication_path=manifest.eradication_path, campaign_path="campaign_june242019.json", demographics_paths=["TestDemographics_Mystery_Fert.json"], ep4_path=None) + task = EMODTask.from_files(config_path="config_feb162019.json", eradication_path=manifest.eradication_path, campaign_path="campaign_feb162019.json", demographics_paths=["TestDemographics_Blantyre.json"], ep4_path=None) + print("Adding asset dir...") task.common_assets.add_directory(assets_directory=manifest.reporters, relative_path="reporter_plugins") @@ -35,21 +53,22 @@ def run(): # Create simulation sweep with builder builder = SimulationBuilder() - builder.add_sweep_definition( update_sim_random_seed, range(1) ) + builder.add_sweep_definition( update_sim_random_seed, range(4) ) + builder.add_sweep_definition( update_sim_param, range(4) ) # create experiment from builder - experiment = Experiment.from_builder(builder, task, name="Typhoid Blantyre emodpy") + experiment = Experiment.from_builder(builder, task, name="Typhoid Blantyre NoHINT emodpy from_files") # The last step is to call run() on the ExperimentManager to run the simulations. experiment.run(wait_until_done=True, platform=platform) task.handle_experiment_completion( experiment ) # download and plot some stuff. - EMODTask.get_file_from_comps( experiment.uid, [ "InsetChart.json", "SpatialOutput_Prevalence.bin" ] ) + EMODTask.get_file_from_comps( experiment.uid, [ "InsetChart.json" ] ) task.cache_experiment_metadata_in_sql( experiment.uid ) - import emod_api.channelreports.plot_icj_means as plotter - chan_data = plotter.collect( str( experiment.uid ), "Infected" ) - plotter.display( chan_data, False, "Infected", str( experiment.uid ) ) + #import emod_api.channelreports.plot_icj_means as plotter + #chan_data = plotter.collect( "Typhoid Blantyre NoHINT emodpy from_files".replace( " ", "_" ), "Infected" ) + #plotter.display( chan_data, False, "Infected", str( experiment.uid ) ) if __name__ == "__main__": From 897b58612c64092d555bd05c110c698f71e6be5c Mon Sep 17 00:00:00 2001 From: Jonathan Bloedow Date: Thu, 14 Sep 2023 16:25:26 -0700 Subject: [PATCH 02/28] Making versions of emod-typhoid and emodpy really specific for now in this branch. --- requirements.txt | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/requirements.txt b/requirements.txt index 25bfa20..c1a1fdf 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,2 +1,3 @@ -emodpy~=1.16 -emod-typhoid +emod-typhoid==0.0.2.dev0 +emodpy==1.22.0.dev2 + From c65b0a8ced180f30600e6542d89c52fe37760acc Mon Sep 17 00:00:00 2001 From: Jonathan Bloedow Date: Thu, 14 Sep 2023 16:36:03 -0700 Subject: [PATCH 03/28] Adding Feb162019 config and campaign files. --- .../from_files/TestDemographics_Blantyre.json | 1850 +++++++++++++++++ .../from_files/campaign_feb162019.json | 30 + .../from_files/config_feb162019.json | 176 ++ .../from_files/dtk_centos_2018.id | 1 + 4 files changed, 2057 insertions(+) create mode 100644 examples/blantyre_noHINT/from_files/TestDemographics_Blantyre.json create mode 100644 examples/blantyre_noHINT/from_files/campaign_feb162019.json create mode 100644 examples/blantyre_noHINT/from_files/config_feb162019.json create mode 100644 examples/blantyre_noHINT/from_files/dtk_centos_2018.id diff --git a/examples/blantyre_noHINT/from_files/TestDemographics_Blantyre.json b/examples/blantyre_noHINT/from_files/TestDemographics_Blantyre.json new file mode 100644 index 0000000..b4207e3 --- /dev/null +++ b/examples/blantyre_noHINT/from_files/TestDemographics_Blantyre.json @@ -0,0 +1,1850 @@ +{ + "Metadata": { + "DateCreated": "Sun Sep 25 23:19:55 2011", + "Tool": "convertdemog.py", + "Author": "jsteinkraus", + "IdReference": "Gridded world grump2.5arcmin", + "NodeCount": 1 + }, + "Nodes": [ + { + "NodeID": 340461476, + "NodeAttributes": { + "Latitude": -8.5, + "Longitude": 36.5, + "Altitude": 0, + "Airport": 0, + "Region": 1, + "Seaport": 0, + "InitialPopulation": 16000, + "BirthRate": 0 + }, + "IndividualAttributes": { + "AgeDistributionFlag": 3, + "AgeDistribution1": 0.0001, + "AgeDistribution2": 0, + "PrevalenceDistributionFlag": 0, + "PrevalenceDistribution1": 0, + "PrevalenceDistribution2": 0, + "ImmunityDistributionFlag": 0, + "ImmunityDistribution1": 1, + "ImmunityDistribution2": 0, + "RiskDistributionFlag": 0, + "RiskDistribution1": 1, + "RiskDistribution2": 0, + "MigrationHeterogeneityDistributionFlag": 0, + "MigrationHeterogeneityDistribution1": 1, + "MigrationHeterogeneityDistribution2": 0, + "AgeDistribution": { + "NumDistributionAxes": 0, + "ResultUnits": "years", + "ResultScaleFactor": 365, + "ResultValues": [ + 0, + 5, + 10, + 15, + 20, + 25, + 30, + 35, + 40, + 45, + 50, + 55, + 60, + 65, + 70, + 75, + 80, + 100, + 120 + ], + "DistributionValues": [ + 0, + 0.192773, + 0.3371, + 0.4569, + 0.558371, + 0.643779, + 0.715447, + 0.780933, + 0.82994, + 0.86586, + 0.89963, + 0.927119, + 0.95044, + 0.969203, + 0.983359, + 0.992669, + 0.997585, + 1, + 1 + ] + }, + "MortalityDistributionMale": { + "NumDistributionAxes": 2, + "AxisNames": [ + "age", + "year" + ], + "AxisUnits": [ + "years", + "simulation year" + ], + "AxisScaleFactors": [ + 365, + 1 + ], + "NumPopulationGroups": [ + 38, + 13 + ], + "PopulationGroups": [ + [ + 0, + 0.999, + 1, + 4.999, + 5, + 9.999, + 10, + 14.999, + 15, + 19.999, + 20, + 24.999, + 25, + 29.999, + 30, + 34.999, + 35, + 39.999, + 40, + 44.999, + 45, + 49.999, + 50, + 54.999, + 55, + 59.999, + 60, + 64.999, + 65, + 69.999, + 70, + 74.999, + 75, + 79.999, + 80, + 84.999, + 85, + 100 + ], + [ + 1952.5, + 1957.5, + 1962.5, + 1967.5, + 1972.5, + 1977.5, + 1982.5, + 1987.5, + 1992.5, + 1997.5, + 2002.5, + 2007.5, + 2012.5 + ] + ], + "ResultUnits": "Mortality rate in units of 1/year", + "ResultScaleFactor": 0.0027, + "ResultValues": [ + [ + 0.2396, + 0.2321, + 0.2233, + 0.2155, + 0.2, + 0.1873, + 0.1784, + 0.1757, + 0.1604, + 0.1374, + 0.1182, + 0.0891, + 0.0668 + ], + [ + 0.2396, + 0.2321, + 0.2233, + 0.2155, + 0.2, + 0.1873, + 0.1784, + 0.1757, + 0.1604, + 0.1374, + 0.1182, + 0.0891, + 0.0668 + ], + [ + 0.0522, + 0.05, + 0.0473, + 0.0449, + 0.0399, + 0.0357, + 0.0318, + 0.0291, + 0.0233, + 0.0165, + 0.0118, + 0.0073, + 0.0046 + ], + [ + 0.0522, + 0.05, + 0.0473, + 0.0449, + 0.0399, + 0.0357, + 0.0318, + 0.0291, + 0.0233, + 0.0165, + 0.0118, + 0.0073, + 0.0046 + ], + [ + 0.0085, + 0.0082, + 0.0078, + 0.0074, + 0.0065, + 0.0059, + 0.0053, + 0.0048, + 0.0043, + 0.0039, + 0.0034, + 0.0028, + 0.002 + ], + [ + 0.0085, + 0.0082, + 0.0078, + 0.0074, + 0.0065, + 0.0059, + 0.0053, + 0.0048, + 0.0043, + 0.0039, + 0.0034, + 0.0028, + 0.002 + ], + [ + 0.0042, + 0.004, + 0.0038, + 0.0037, + 0.0033, + 0.0031, + 0.0028, + 0.0026, + 0.0022, + 0.0026, + 0.0033, + 0.0034, + 0.003 + ], + [ + 0.0042, + 0.004, + 0.0038, + 0.0037, + 0.0033, + 0.0031, + 0.0028, + 0.0026, + 0.0022, + 0.0026, + 0.0033, + 0.0034, + 0.003 + ], + [ + 0.0063, + 0.0061, + 0.0058, + 0.0056, + 0.0051, + 0.0047, + 0.0043, + 0.0041, + 0.0033, + 0.0028, + 0.0032, + 0.003, + 0.0024 + ], + [ + 0.0063, + 0.0061, + 0.0058, + 0.0056, + 0.0051, + 0.0047, + 0.0043, + 0.0041, + 0.0033, + 0.0028, + 0.0032, + 0.003, + 0.0024 + ], + [ + 0.0097, + 0.0093, + 0.0089, + 0.0086, + 0.0078, + 0.0072, + 0.0068, + 0.0072, + 0.0067, + 0.0053, + 0.0044, + 0.003, + 0.002 + ], + [ + 0.0097, + 0.0093, + 0.0089, + 0.0086, + 0.0078, + 0.0072, + 0.0068, + 0.0072, + 0.0067, + 0.0053, + 0.0044, + 0.003, + 0.002 + ], + [ + 0.0096, + 0.0093, + 0.0089, + 0.0085, + 0.0077, + 0.0071, + 0.0072, + 0.0101, + 0.0134, + 0.0134, + 0.0121, + 0.0082, + 0.004 + ], + [ + 0.0096, + 0.0093, + 0.0089, + 0.0085, + 0.0077, + 0.0071, + 0.0072, + 0.0101, + 0.0134, + 0.0134, + 0.0121, + 0.0082, + 0.004 + ], + [ + 0.0098, + 0.0095, + 0.0091, + 0.0088, + 0.0081, + 0.0075, + 0.0078, + 0.0127, + 0.0197, + 0.0224, + 0.0218, + 0.0148, + 0.0074 + ], + [ + 0.0098, + 0.0095, + 0.0091, + 0.0088, + 0.0081, + 0.0075, + 0.0078, + 0.0127, + 0.0197, + 0.0224, + 0.0218, + 0.0148, + 0.0074 + ], + [ + 0.011, + 0.0106, + 0.0102, + 0.0098, + 0.0091, + 0.0085, + 0.0089, + 0.0152, + 0.0265, + 0.0333, + 0.0345, + 0.0244, + 0.0122 + ], + [ + 0.011, + 0.0106, + 0.0102, + 0.0098, + 0.0091, + 0.0085, + 0.0089, + 0.0152, + 0.0265, + 0.0333, + 0.0345, + 0.0244, + 0.0122 + ], + [ + 0.0133, + 0.0129, + 0.0124, + 0.012, + 0.0111, + 0.0105, + 0.0104, + 0.0142, + 0.0221, + 0.0291, + 0.032, + 0.0236, + 0.0127 + ], + [ + 0.0133, + 0.0129, + 0.0124, + 0.012, + 0.0111, + 0.0105, + 0.0104, + 0.0142, + 0.0221, + 0.0291, + 0.032, + 0.0236, + 0.0127 + ], + [ + 0.016, + 0.0156, + 0.015, + 0.0146, + 0.0136, + 0.0129, + 0.0125, + 0.0144, + 0.0187, + 0.023, + 0.0262, + 0.0202, + 0.0119 + ], + [ + 0.016, + 0.0156, + 0.015, + 0.0146, + 0.0136, + 0.0129, + 0.0125, + 0.0144, + 0.0187, + 0.023, + 0.0262, + 0.0202, + 0.0119 + ], + [ + 0.021, + 0.0204, + 0.0198, + 0.0192, + 0.0181, + 0.0172, + 0.0166, + 0.0174, + 0.0182, + 0.0184, + 0.0189, + 0.015, + 0.0108 + ], + [ + 0.021, + 0.0204, + 0.0198, + 0.0192, + 0.0181, + 0.0172, + 0.0166, + 0.0174, + 0.0182, + 0.0184, + 0.0189, + 0.015, + 0.0108 + ], + [ + 0.0284, + 0.0278, + 0.027, + 0.0263, + 0.0249, + 0.0238, + 0.023, + 0.0235, + 0.0231, + 0.0213, + 0.0199, + 0.016, + 0.0127 + ], + [ + 0.0284, + 0.0278, + 0.027, + 0.0263, + 0.0249, + 0.0238, + 0.023, + 0.0235, + 0.0231, + 0.0213, + 0.0199, + 0.016, + 0.0127 + ], + [ + 0.0424, + 0.0415, + 0.0403, + 0.0393, + 0.0372, + 0.0356, + 0.0343, + 0.0344, + 0.033, + 0.0297, + 0.0269, + 0.0217, + 0.0178 + ], + [ + 0.0424, + 0.0415, + 0.0403, + 0.0393, + 0.0372, + 0.0356, + 0.0343, + 0.0344, + 0.033, + 0.0297, + 0.0269, + 0.0217, + 0.0178 + ], + [ + 0.0632, + 0.0617, + 0.06, + 0.0586, + 0.0557, + 0.0534, + 0.0513, + 0.0504, + 0.0477, + 0.0429, + 0.0388, + 0.0319, + 0.0271 + ], + [ + 0.0632, + 0.0617, + 0.06, + 0.0586, + 0.0557, + 0.0534, + 0.0513, + 0.0504, + 0.0477, + 0.0429, + 0.0388, + 0.0319, + 0.0271 + ], + [ + 0.0999, + 0.0977, + 0.0952, + 0.093, + 0.0888, + 0.0855, + 0.0823, + 0.0796, + 0.0736, + 0.0663, + 0.0603, + 0.0514, + 0.0457 + ], + [ + 0.0999, + 0.0977, + 0.0952, + 0.093, + 0.0888, + 0.0855, + 0.0823, + 0.0796, + 0.0736, + 0.0663, + 0.0603, + 0.0514, + 0.0457 + ], + [ + 0.1582, + 0.1551, + 0.1514, + 0.1484, + 0.1423, + 0.1378, + 0.1334, + 0.1296, + 0.1211, + 0.1096, + 0.1023, + 0.09, + 0.0823 + ], + [ + 0.1582, + 0.1551, + 0.1514, + 0.1484, + 0.1423, + 0.1378, + 0.1334, + 0.1296, + 0.1211, + 0.1096, + 0.1023, + 0.09, + 0.0823 + ], + [ + 0.2448, + 0.2406, + 0.2356, + 0.2314, + 0.2233, + 0.2172, + 0.2115, + 0.2065, + 0.1954, + 0.1806, + 0.1712, + 0.1548, + 0.1444 + ], + [ + 0.2448, + 0.2406, + 0.2356, + 0.2314, + 0.2233, + 0.2172, + 0.2115, + 0.2065, + 0.1954, + 0.1806, + 0.1712, + 0.1548, + 0.1444 + ], + [ + 0.3806, + 0.3757, + 0.37, + 0.3652, + 0.3561, + 0.3495, + 0.3433, + 0.338, + 0.3262, + 0.311, + 0.3018, + 0.285, + 0.2745 + ], + [ + 0.3806, + 0.3757, + 0.37, + 0.3652, + 0.3561, + 0.3495, + 0.3433, + 0.338, + 0.3262, + 0.311, + 0.3018, + 0.285, + 0.2745 + ] + ] + }, + "MortalityDistributionFemale": { + "NumDistributionAxes": 2, + "AxisNames": [ + "age", + "year" + ], + "AxisUnits": [ + "years", + "simulation year" + ], + "AxisScaleFactors": [ + 365, + 1 + ], + "NumPopulationGroups": [ + 38, + 13 + ], + "PopulationGroups": [ + [ + 0, + 0.999, + 1, + 4.999, + 5, + 9.999, + 10, + 14.999, + 15, + 19.999, + 20, + 24.999, + 25, + 29.999, + 30, + 34.999, + 35, + 39.999, + 40, + 44.999, + 45, + 49.999, + 50, + 54.999, + 55, + 59.999, + 60, + 64.999, + 65, + 69.999, + 70, + 74.999, + 75, + 79.999, + 80, + 84.999, + 85, + 100 + ], + [ + 1952.5, + 1957.5, + 1962.5, + 1967.5, + 1972.5, + 1977.5, + 1982.5, + 1987.5, + 1992.5, + 1997.5, + 2002.5, + 2007.5, + 2012.5 + ] + ], + "ResultUnits": "Mortality rate in units of 1/year", + "ResultScaleFactor": 0.0027, + "ResultValues": [ + [ + 0.2156, + 0.2088, + 0.2004, + 0.1931, + 0.1801, + 0.1688, + 0.1607, + 0.1585, + 0.1462, + 0.1265, + 0.1084, + 0.0802, + 0.0593 + ], + [ + 0.2156, + 0.2088, + 0.2004, + 0.1931, + 0.1801, + 0.1688, + 0.1607, + 0.1585, + 0.1462, + 0.1265, + 0.1084, + 0.0802, + 0.0593 + ], + [ + 0.055, + 0.0525, + 0.0493, + 0.0466, + 0.0413, + 0.0368, + 0.0325, + 0.0293, + 0.0235, + 0.0165, + 0.0118, + 0.0071, + 0.0045 + ], + [ + 0.055, + 0.0525, + 0.0493, + 0.0466, + 0.0413, + 0.0368, + 0.0325, + 0.0293, + 0.0235, + 0.0165, + 0.0118, + 0.0071, + 0.0045 + ], + [ + 0.0093, + 0.0089, + 0.0084, + 0.008, + 0.007, + 0.0062, + 0.0055, + 0.0049, + 0.0043, + 0.0037, + 0.0033, + 0.0026, + 0.0019 + ], + [ + 0.0093, + 0.0089, + 0.0084, + 0.008, + 0.007, + 0.0062, + 0.0055, + 0.0049, + 0.0043, + 0.0037, + 0.0033, + 0.0026, + 0.0019 + ], + [ + 0.0051, + 0.0049, + 0.0046, + 0.0044, + 0.0039, + 0.0035, + 0.0032, + 0.0028, + 0.0023, + 0.0025, + 0.0031, + 0.0032, + 0.0027 + ], + [ + 0.0051, + 0.0049, + 0.0046, + 0.0044, + 0.0039, + 0.0035, + 0.0032, + 0.0028, + 0.0023, + 0.0025, + 0.0031, + 0.0032, + 0.0027 + ], + [ + 0.0071, + 0.0068, + 0.0064, + 0.0062, + 0.0056, + 0.005, + 0.0046, + 0.0043, + 0.0035, + 0.0028, + 0.0031, + 0.0025, + 0.002 + ], + [ + 0.0071, + 0.0068, + 0.0064, + 0.0062, + 0.0056, + 0.005, + 0.0046, + 0.0043, + 0.0035, + 0.0028, + 0.0031, + 0.0025, + 0.002 + ], + [ + 0.0089, + 0.0086, + 0.0081, + 0.0077, + 0.007, + 0.0064, + 0.0061, + 0.0072, + 0.0075, + 0.0065, + 0.0055, + 0.0036, + 0.0021 + ], + [ + 0.0089, + 0.0086, + 0.0081, + 0.0077, + 0.007, + 0.0064, + 0.0061, + 0.0072, + 0.0075, + 0.0065, + 0.0055, + 0.0036, + 0.0021 + ], + [ + 0.0097, + 0.0093, + 0.0088, + 0.0085, + 0.0077, + 0.007, + 0.007, + 0.0113, + 0.0189, + 0.0215, + 0.0206, + 0.0125, + 0.0058 + ], + [ + 0.0097, + 0.0093, + 0.0088, + 0.0085, + 0.0077, + 0.007, + 0.007, + 0.0113, + 0.0189, + 0.0215, + 0.0206, + 0.0125, + 0.0058 + ], + [ + 0.0101, + 0.0097, + 0.0092, + 0.0088, + 0.008, + 0.0073, + 0.0071, + 0.0115, + 0.0224, + 0.0308, + 0.0323, + 0.0201, + 0.01 + ], + [ + 0.0101, + 0.0097, + 0.0092, + 0.0088, + 0.008, + 0.0073, + 0.0071, + 0.0115, + 0.0224, + 0.0308, + 0.0323, + 0.0201, + 0.01 + ], + [ + 0.0108, + 0.0104, + 0.0099, + 0.0095, + 0.0087, + 0.0079, + 0.0076, + 0.0109, + 0.0215, + 0.034, + 0.0409, + 0.0273, + 0.0146 + ], + [ + 0.0108, + 0.0104, + 0.0099, + 0.0095, + 0.0087, + 0.0079, + 0.0076, + 0.0109, + 0.0215, + 0.034, + 0.0409, + 0.0273, + 0.0146 + ], + [ + 0.0114, + 0.011, + 0.0105, + 0.01, + 0.0092, + 0.0086, + 0.008, + 0.0091, + 0.0134, + 0.0206, + 0.0274, + 0.0205, + 0.0122 + ], + [ + 0.0114, + 0.011, + 0.0105, + 0.01, + 0.0092, + 0.0086, + 0.008, + 0.0091, + 0.0134, + 0.0206, + 0.0274, + 0.0205, + 0.0122 + ], + [ + 0.0124, + 0.012, + 0.0115, + 0.011, + 0.0102, + 0.0096, + 0.0091, + 0.0099, + 0.0117, + 0.014, + 0.0173, + 0.0134, + 0.0086 + ], + [ + 0.0124, + 0.012, + 0.0115, + 0.011, + 0.0102, + 0.0096, + 0.0091, + 0.0099, + 0.0117, + 0.014, + 0.0173, + 0.0134, + 0.0086 + ], + [ + 0.0164, + 0.0159, + 0.0152, + 0.0147, + 0.0136, + 0.0128, + 0.0121, + 0.0124, + 0.0129, + 0.0127, + 0.0125, + 0.0092, + 0.0066 + ], + [ + 0.0164, + 0.0159, + 0.0152, + 0.0147, + 0.0136, + 0.0128, + 0.0121, + 0.0124, + 0.0129, + 0.0127, + 0.0125, + 0.0092, + 0.0066 + ], + [ + 0.0226, + 0.022, + 0.0211, + 0.0204, + 0.019, + 0.0179, + 0.0168, + 0.0165, + 0.0158, + 0.0143, + 0.0128, + 0.0093, + 0.007 + ], + [ + 0.0226, + 0.022, + 0.0211, + 0.0204, + 0.019, + 0.0179, + 0.0168, + 0.0165, + 0.0158, + 0.0143, + 0.0128, + 0.0093, + 0.007 + ], + [ + 0.0373, + 0.0361, + 0.0347, + 0.0334, + 0.0311, + 0.0292, + 0.0275, + 0.0262, + 0.0239, + 0.0205, + 0.0178, + 0.0131, + 0.0104 + ], + [ + 0.0373, + 0.0361, + 0.0347, + 0.0334, + 0.0311, + 0.0292, + 0.0275, + 0.0262, + 0.0239, + 0.0205, + 0.0178, + 0.0131, + 0.0104 + ], + [ + 0.0585, + 0.0568, + 0.0546, + 0.0528, + 0.0494, + 0.0467, + 0.044, + 0.0417, + 0.037, + 0.0316, + 0.0272, + 0.021, + 0.0174 + ], + [ + 0.0585, + 0.0568, + 0.0546, + 0.0528, + 0.0494, + 0.0467, + 0.044, + 0.0417, + 0.037, + 0.0316, + 0.0272, + 0.021, + 0.0174 + ], + [ + 0.096, + 0.0933, + 0.09, + 0.0872, + 0.0822, + 0.0781, + 0.0741, + 0.0706, + 0.0636, + 0.0543, + 0.0481, + 0.0385, + 0.0331 + ], + [ + 0.096, + 0.0933, + 0.09, + 0.0872, + 0.0822, + 0.0781, + 0.0741, + 0.0706, + 0.0636, + 0.0543, + 0.0481, + 0.0385, + 0.0331 + ], + [ + 0.1539, + 0.1499, + 0.145, + 0.1408, + 0.1335, + 0.1278, + 0.1223, + 0.1174, + 0.1076, + 0.0946, + 0.086, + 0.072, + 0.0636 + ], + [ + 0.1539, + 0.1499, + 0.145, + 0.1408, + 0.1335, + 0.1278, + 0.1223, + 0.1174, + 0.1076, + 0.0946, + 0.086, + 0.072, + 0.0636 + ], + [ + 0.2418, + 0.2362, + 0.2294, + 0.2236, + 0.2133, + 0.2061, + 0.1988, + 0.1923, + 0.1794, + 0.1626, + 0.1514, + 0.1324, + 0.1202 + ], + [ + 0.2418, + 0.2362, + 0.2294, + 0.2236, + 0.2133, + 0.2061, + 0.1988, + 0.1923, + 0.1794, + 0.1626, + 0.1514, + 0.1324, + 0.1202 + ], + [ + 0.3702, + 0.3636, + 0.3558, + 0.3492, + 0.3377, + 0.3299, + 0.3221, + 0.3153, + 0.3019, + 0.2853, + 0.2746, + 0.2558, + 0.243 + ], + [ + 0.3702, + 0.3636, + 0.3558, + 0.3492, + 0.3377, + 0.3299, + 0.3221, + 0.3153, + 0.3019, + 0.2853, + 0.2746, + 0.2558, + 0.243 + ] + ] + }, + "FertilityDistribution": { + "NumDistributionAxes": 2, + "AxisNames": [ + "age", + "year" + ], + "AxisUnits": [ + "years", + "simulation year" + ], + "AxisScaleFactors": [ + 365, + 1 + ], + "NumPopulationGroups": [ + 14, + 26 + ], + "PopulationGroups": [ + [ + 15, + 19.9999, + 20, + 24.9999, + 25, + 29.9999, + 30, + 34.9999, + 35, + 39.9999, + 40, + 44.9999, + 45, + 50 + ], + [ + 1950, + 1954.999, + 1955, + 1959.999, + 1960, + 1964.999, + 1965, + 1969.999, + 1970, + 1974.999, + 1975, + 1979.999, + 1980, + 1984.999, + 1985, + 1989.999, + 1990, + 1994.999, + 1995, + 1999.999, + 2000, + 2004.999, + 2005, + 2009.999, + 2010, + 2015 + ] + ], + "ResultUnits": "annual births per 1000 individuals", + "ResultScaleFactor": 2.7397e-006, + "ResultValues": [ + [ + 182.6, + 182.6, + 183.9, + 183.9, + 186.6, + 186.6, + 192, + 192, + 197.3, + 197.3, + 202.5, + 202.5, + 202.5, + 202.5, + 194.5, + 194.5, + 164.2, + 164.2, + 166.1, + 166.1, + 158.3, + 158.3, + 156.4, + 156.4, + 140.2, + 140.2 + ], + [ + 182.6, + 182.6, + 183.9, + 183.9, + 186.6, + 186.6, + 192, + 192, + 197.3, + 197.3, + 202.5, + 202.5, + 202.5, + 202.5, + 194.5, + 194.5, + 164.2, + 164.2, + 166.1, + 166.1, + 158.3, + 158.3, + 156.4, + 156.4, + 140.2, + 140.2 + ], + [ + 288.3, + 288.3, + 290.4, + 290.4, + 294.7, + 294.7, + 303.2, + 303.2, + 311.5, + 311.5, + 319.8, + 319.8, + 319.8, + 319.8, + 307.2, + 307.2, + 297, + 297, + 305.3, + 305.3, + 291, + 291, + 271.4, + 271.4, + 251.8, + 251.8 + ], + [ + 288.3, + 288.3, + 290.4, + 290.4, + 294.7, + 294.7, + 303.2, + 303.2, + 311.5, + 311.5, + 319.8, + 319.8, + 319.8, + 319.8, + 307.2, + 307.2, + 297, + 297, + 305.3, + 305.3, + 291, + 291, + 271.4, + 271.4, + 251.8, + 251.8 + ], + [ + 279.2, + 279.2, + 281.3, + 281.3, + 285.5, + 285.5, + 293.7, + 293.7, + 301.7, + 301.7, + 309.8, + 309.8, + 309.8, + 309.8, + 297.6, + 297.6, + 272.3, + 272.3, + 274.5, + 274.5, + 261.6, + 261.6, + 242, + 242, + 220.3, + 220.3 + ], + [ + 279.2, + 279.2, + 281.3, + 281.3, + 285.5, + 285.5, + 293.7, + 293.7, + 301.7, + 301.7, + 309.8, + 309.8, + 309.8, + 309.8, + 297.6, + 297.6, + 272.3, + 272.3, + 274.5, + 274.5, + 261.6, + 261.6, + 242, + 242, + 220.3, + 220.3 + ], + [ + 246.7, + 246.7, + 248.5, + 248.5, + 252.2, + 252.2, + 259.5, + 259.5, + 266.6, + 266.6, + 273.7, + 273.7, + 273.7, + 273.7, + 262.9, + 262.9, + 244.8, + 244.8, + 217.8, + 217.8, + 207.6, + 207.6, + 207.8, + 207.8, + 190.3, + 190.3 + ], + [ + 246.7, + 246.7, + 248.5, + 248.5, + 252.2, + 252.2, + 259.5, + 259.5, + 266.6, + 266.6, + 273.7, + 273.7, + 273.7, + 273.7, + 262.9, + 262.9, + 244.8, + 244.8, + 217.8, + 217.8, + 207.6, + 207.6, + 207.8, + 207.8, + 190.3, + 190.3 + ], + [ + 181.6, + 181.6, + 183, + 183, + 185.7, + 185.7, + 191, + 191, + 196.3, + 196.3, + 201.5, + 201.5, + 201.5, + 201.5, + 193.6, + 193.6, + 185.9, + 185.9, + 168.1, + 168.1, + 160.2, + 160.2, + 161.8, + 161.8, + 140.1, + 140.1 + ], + [ + 181.6, + 181.6, + 183, + 183, + 185.7, + 185.7, + 191, + 191, + 196.3, + 196.3, + 201.5, + 201.5, + 201.5, + 201.5, + 193.6, + 193.6, + 185.9, + 185.9, + 168.1, + 168.1, + 160.2, + 160.2, + 161.8, + 161.8, + 140.1, + 140.1 + ], + [ + 116.6, + 116.6, + 117.4, + 117.4, + 119.2, + 119.2, + 122.6, + 122.6, + 126, + 126, + 129.3, + 129.3, + 129.3, + 129.3, + 124.2, + 124.2, + 115.5, + 115.5, + 98.5, + 98.5, + 93.8, + 93.8, + 84.8, + 84.8, + 80.5, + 80.5 + ], + [ + 116.6, + 116.6, + 117.4, + 117.4, + 119.2, + 119.2, + 122.6, + 122.6, + 126, + 126, + 129.3, + 129.3, + 129.3, + 129.3, + 124.2, + 124.2, + 115.5, + 115.5, + 98.5, + 98.5, + 93.8, + 93.8, + 84.8, + 84.8, + 80.5, + 80.5 + ], + [ + 75, + 75, + 75.6, + 75.6, + 76.7, + 76.7, + 78.9, + 78.9, + 81.1, + 81.1, + 83.2, + 83.2, + 83.2, + 83.2, + 79.9, + 79.9, + 60.3, + 60.3, + 49.7, + 49.7, + 47.4, + 47.4, + 35.8, + 35.8, + 26.8, + 26.8 + ], + [ + 75, + 75, + 75.6, + 75.6, + 76.7, + 76.7, + 78.9, + 78.9, + 81.1, + 81.1, + 83.2, + 83.2, + 83.2, + 83.2, + 79.9, + 79.9, + 60.3, + 60.3, + 49.7, + 49.7, + 47.4, + 47.4, + 35.8, + 35.8, + 26.8, + 26.8 + ] + ] + } + } + } + ] +} + diff --git a/examples/blantyre_noHINT/from_files/campaign_feb162019.json b/examples/blantyre_noHINT/from_files/campaign_feb162019.json new file mode 100644 index 0000000..c71f783 --- /dev/null +++ b/examples/blantyre_noHINT/from_files/campaign_feb162019.json @@ -0,0 +1,30 @@ +{ + "Events": [ + { + "Event_Coordinator_Config": { + "Demographic_Coverage": 0.01, + "Intervention_Config": { + "Delay_Distribution": "UNIFORM_DURATION", + "Delay_Period_Max": 30, + "Delay_Period_Min": 1, + "Outbreak_Source": "PrevalenceIncrease", + "class": "OutbreakIndividual" + }, + "Number_Repetitions": 5, + "Property_Restrictions": [], + "Property_Restrictions__KP_OutbreakSeed": "<--MARKER", + "Timesteps_Between_Repetitions": 730, + "class": "StandardInterventionDistributionEventCoordinator" + }, + "Event_Name": "Outbreak", + "Nodeset_Config": { + "class": "NodeSetAll" + }, + "Start_Day": 1, + "Target_Demographic": "Everyone", + "class": "CampaignEvent" + } + ], + "Use_Defaults": 1, + "class": "Campaign" +} \ No newline at end of file diff --git a/examples/blantyre_noHINT/from_files/config_feb162019.json b/examples/blantyre_noHINT/from_files/config_feb162019.json new file mode 100644 index 0000000..818c9b3 --- /dev/null +++ b/examples/blantyre_noHINT/from_files/config_feb162019.json @@ -0,0 +1,176 @@ +{ + "parameters": { + "Enable_Abort_Zero_Infectivity": 0, + "Typhoid_Immunity_Memory": 36500, + "Acquisition_Blocking_Immunity_Decay_Rate": 0.1, + "Acquisition_Blocking_Immunity_Duration_Before_Decay": 60, + "Age_Initialization_Distribution_Type": "DISTRIBUTION_COMPLEX", + "Air_Temperature_Filename": "Namawala_single_node_air_temperature_daily.bin", + "Air_Temperature_Offset": 0, + "Air_Temperature_Variance": 2, + "Animal_Reservoir_Type": "NO_ZOONOSIS", + "Base_Air_Temperature": 30, + "Base_Incubation_Period": 3000000, + "Base_Individual_Sample_Rate": 1, + "Base_Infectious_Period": 70000000, + "Base_Infectivity": 0.3, + "Base_Land_Temperature": 30, + "Base_Mortality": 0, + "Base_Population_Scale_Factor": 0.03, + "Base_Rainfall": 100, + "Base_Relative_Humidity": 0.5, + "Base_Year": 1920, + "Birth_Rate_Dependence": "INDIVIDUAL_PREGNANCIES_BY_AGE_AND_YEAR", + "Birth_Rate_Time_Dependence": "NONE", + "Burnin_Cache_Mode": "none", + "Burnin_Cache_Period": 0, + "Burnin_Name": "", + "Campaign_Filename": "campaign_feb162019.json", + "Climate_Model": "CLIMATE_OFF", + "Climate_Update_Resolution": "CLIMATE_UPDATE_DAY", + "Config_Name": "149_Typhoid", + "Custom_Coordinator_Events": [], + "Custom_Individual_Events": [], + "Custom_Node_Events": [], + "Death_Rate_Dependence": "NONDISEASE_MORTALITY_BY_YEAR_AND_AGE_FOR_EACH_GENDER", + "Default_Geography_Initial_Node_Population": 1000, + "Default_Geography_Torus_Size": 10, + "Demographics_Filenames": [ + "TestDemographics_Blantyre.json" + ], + "Enable_Absolute_Time": "NO", + "Enable_Aging": 1, + "Enable_Birth": 1, + "Enable_Climate_Stochasticity": 1, + "Enable_Default_Reporting": 1, + "Enable_Default_Shedding_Function": 1, + "Enable_Demographics_Birth": 0, + "Enable_Demographics_Builtin": 0, + "Enable_Demographics_Gender": 1, + "Enable_Demographics_Initial": 1, + "Enable_Demographics_Other": 0, + "Enable_Demographics_Reporting": 0, + "Enable_Disease_Mortality": 0, + "Enable_Heterogeneous_Intranode_Transmission": 0, + "Enable_Immune_Decay": 0, + "Enable_Immunity": 0, + "Enable_Immunity_Distribution": 0, + "Enable_Immunity_Initialization_Distribution": 0, + "Enable_Initial_Prevalence": 0, + "Enable_Interventions": 1, + "Enable_Maternal_Antibodies_Transmission": 0, + "Enable_Maternal_Infection_Transmission": 0, + "Enable_Maternal_Protection": 0, + "Enable_Maternal_Transmission": 0, + "Enable_Natural_Mortality": 1, + "Enable_Property_Output": 0, + "Enable_Rainfall_Stochasticity": 1, + "Enable_Skipping": 1, + "Enable_Spatial_Output": 0, + "Enable_Superinfection": 0, + "Enable_Susceptibility_Scaling": 0, + "Enable_Vital_Dynamics": 1, + "Environmental_Incubation_Period": 1, + "Exposure_Days": 7300, + "Geography": "Santiago", + "Immunity_Acquisition_Factor": 0, + "Immunity_Initialization_Distribution_Type": "DISTRIBUTION_OFF", + "Immunity_Mortality_Factor": 0, + "Immunity_Transmission_Factor": 0, + "Incubation_Period_Distribution": "FIXED_DURATION", + "Individual_Sampling_Type": "TRACK_ALL", + "Infection_Updates_Per_Timestep": 1, + "Infectious_Period_Distribution": "EXPONENTIAL_DURATION", + "Infectivity_Scale_Type": "CONSTANT_INFECTIVITY", + "Inset_Chart_Reporting_Start_Year": 1920, + "Inset_Chart_Reporting_Stop_Year": 2020, + "Job_Node_Groups": "Chassis08", + "Job_Priority": "BELOWNORMAL", + "Land_Temperature_Filename": "Namawala_single_node_land_temperature_daily.bin", + "Land_Temperature_Offset": 0, + "Land_Temperature_Variance": 2, + "Listed_Events": [], + "Load_Balance_Filename": "", + "Load_Balance_Scheme": "STATIC", + "Local_Simulation": 0, + "Maternal_Transmission_Probability": 0, + "Max_Individual_Infections": 1, + "Max_Node_Population_Samples": 40, + "Migration_Model": "NO_MIGRATION", + "Minimum_Adult_Age_Years": 15, + "Mortality_Blocking_Immunity_Decay_Rate": 0.001, + "Mortality_Blocking_Immunity_Duration_Before_Decay": 60, + "Mortality_Time_Course": "DAILY_MORTALITY", + "Node_Contagion_Decay_Rate": 0.24, + "Node_Grid_Size": 0.009, + "Num_Cores": 1, + "Num_Retries": 5, + "Number_Basestrains": 1, + "Number_Substrains": 1, + "PKPD_Model": "FIXED_DURATION_CONSTANT_EFFECT", + "Population_Density_C50": 30, + "Population_Density_Infectivity_Correction": "CONSTANT_INFECTIVITY", + "Population_Scale_Type": "FIXED_SCALING", + "Python_Script_Path": "\\\\idmppfil01\\idm\\home\\jgauld\\input\\Python_Scripts\\", + "Rainfall_Filename": "Namawala_single_node_rainfall_daily.bin", + "Rainfall_Scale_Factor": 1, + "Relative_Humidity_Filename": "Namawala_single_node_relative_humidity_daily.bin", + "Relative_Humidity_Scale_Factor": 1, + "Relative_Humidity_Variance": 0.05, + "Report_Coordinator_Event_Recorder": 0, + "Report_Event_Recorder": 0, + "Report_Node_Event_Recorder": 0, + "Report_Surveillance_Event_Recorder": 0, + "Report_Typhoid_ByAgeAndGender_Start_Year": 2010, + "Report_Typhoid_ByAgeAndGender_Stop_Year": 2020, + "Run_Number": 835116, + "Sample_Rate_0_18mo": 1, + "Sample_Rate_10_14": 1, + "Sample_Rate_15_19": 1, + "Sample_Rate_18mo_4yr": 1, + "Sample_Rate_20_Plus": 1, + "Sample_Rate_5_9": 1, + "Sample_Rate_Birth": 2, + "Serialization_Test_Cycles": 0, + "Simulation_Duration": 36500, + "Simulation_Timestep": 1, + "Simulation_Type": "TYPHOID_SIM", + "Start_Time": 0, + "Susceptibility_Scale_Type": "CONSTANT_SUSCEPTIBILITY", + "Transmission_Blocking_Immunity_Decay_Rate": 0.1, + "Transmission_Blocking_Immunity_Duration_Before_Decay": 60, + "Typhoid_3year_Susceptible_Fraction": 0, + "Typhoid_6month_Susceptible_Fraction": 0, + "Typhoid_6year_Susceptible_Fraction": 0, + "Typhoid_Acute_Infectiousness": 13435, + "Typhoid_Carrier_Probability": 0.108, + "Typhoid_Carrier_Removal_Year": 2500, + "Typhoid_Chronic_Relative_Infectiousness": 0.241, + "Typhoid_Contact_Exposure_Rate": 0.06918859049226553, + "Typhoid_Environmental_Exposure_Rate": 0.06169346985005757, + + "Typhoid_Environmental_Cutoff_Days": 157.20690133538764, + "Typhoid_Environmental_Peak_Start": 355.0579483941714, + "Typhoid_Environmental_Ramp_Down_Duration": 112.30224910440123, + "Typhoid_Environmental_Ramp_Up_Duration": 39.540475369174146, + "Environmental_Cutoff_Days": 157.20690133538764, + "Environmental_Peak_Start": 355.0579483941714, + "Environmental_Ramp_Down_Duration": 112.30224910440123, + "Environmental_Ramp_Up_Duration": 39.540475369174146, + "Typhoid_Exposure_Lambda": 7.0, + "Typhoid_Prepatent_Relative_Infectiousness": 0.5, + "Typhoid_Protection_Per_Infection": 0.98, + "Typhoid_Subclinical_Relative_Infectiousness": 1, + "Typhoid_Symptomatic_Fraction": 0.07, + "__sample_index__": 416, + "logLevel_default": "WARNING", + "x_Air_Migration": 1, + "x_Birth": 1, + "x_Local_Migration": 1, + "x_Other_Mortality": 1, + "x_Population_Immunity": 1, + "x_Regional_Migration": 1, + "x_Sea_Migration": 1, + "x_Temporary_Larval_Habitat": 1 + } +} diff --git a/examples/blantyre_noHINT/from_files/dtk_centos_2018.id b/examples/blantyre_noHINT/from_files/dtk_centos_2018.id new file mode 100644 index 0000000..f31211e --- /dev/null +++ b/examples/blantyre_noHINT/from_files/dtk_centos_2018.id @@ -0,0 +1 @@ +79791913-ee50-ee11-aa0a-b88303911bc1::Asset Collection \ No newline at end of file From b89024b3ffa76b13776ad49baf410ea71e5d4331 Mon Sep 17 00:00:00 2001 From: Jonathan Bloedow Date: Thu, 14 Sep 2023 16:36:43 -0700 Subject: [PATCH 04/28] Point manifest to 2018 files. --- examples/blantyre_noHINT/from_files/manifest.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/examples/blantyre_noHINT/from_files/manifest.py b/examples/blantyre_noHINT/from_files/manifest.py index 7821ad8..361640b 100644 --- a/examples/blantyre_noHINT/from_files/manifest.py +++ b/examples/blantyre_noHINT/from_files/manifest.py @@ -1,10 +1,12 @@ import os requirements = "./requirements.txt" #model_dl_dir = "stash" -model_dl_dir = "model-from-to" +#model_dl_dir = "model-from-to" +model_dl_dir = "model_2018" schema_file=os.path.join(model_dl_dir, "schema.json") eradication_path=os.path.join(model_dl_dir, "Eradication") assets_input_dir="Assets" reporters=model_dl_dir -sif="dtk_centos.id" +#sif="dtk_centos.id" +sif="dtk_centos_2018.id" world_bank_dataset="../world_bank_dataset.csv" From 728c96b889cf71d54cedd69af207522b4d03f5e1 Mon Sep 17 00:00:00 2001 From: Jonathan Bloedow Date: Thu, 14 Sep 2023 16:37:54 -0700 Subject: [PATCH 05/28] example.py uses new path param in cache_experiment_metadata_in_sql function. --- examples/blantyre_noHINT/from_files/example.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/examples/blantyre_noHINT/from_files/example.py b/examples/blantyre_noHINT/from_files/example.py index c0f40b6..3c32392 100755 --- a/examples/blantyre_noHINT/from_files/example.py +++ b/examples/blantyre_noHINT/from_files/example.py @@ -56,8 +56,9 @@ def run(): builder.add_sweep_definition( update_sim_random_seed, range(4) ) builder.add_sweep_definition( update_sim_param, range(4) ) + exp_name = "Typhoid Blantyre NoHINT emodpy from_files" # create experiment from builder - experiment = Experiment.from_builder(builder, task, name="Typhoid Blantyre NoHINT emodpy from_files") + experiment = Experiment.from_builder(builder, task, name=exp_name ) # The last step is to call run() on the ExperimentManager to run the simulations. experiment.run(wait_until_done=True, platform=platform) @@ -65,11 +66,14 @@ def run(): # download and plot some stuff. EMODTask.get_file_from_comps( experiment.uid, [ "InsetChart.json" ] ) - task.cache_experiment_metadata_in_sql( experiment.uid ) + task.cache_experiment_metadata_in_sql( experiment.uid, path=exp_name ) #import emod_api.channelreports.plot_icj_means as plotter #chan_data = plotter.collect( "Typhoid Blantyre NoHINT emodpy from_files".replace( " ", "_" ), "Infected" ) #plotter.display( chan_data, False, "Infected", str( experiment.uid ) ) if __name__ == "__main__": + # Uncomment these two lines just for when you run first time after installing a new emod-typhoid module. + #import emod_typhoid.bootstrap as dtk + #dtk.setup( manifest.model_dl_dir ) run() From 79585fa8989611ad53da9a0c218dc8291fc854dd Mon Sep 17 00:00:00 2001 From: Jonathan Bloedow Date: Tue, 19 Sep 2023 21:17:03 -0700 Subject: [PATCH 06/28] Populate PrevalenceDistributionXXX keys in demographics since older binaries look for that unconditionally. --- emodpy_typhoid/demographics/TyphoidDemographics.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/emodpy_typhoid/demographics/TyphoidDemographics.py b/emodpy_typhoid/demographics/TyphoidDemographics.py index e39f7b8..0434a7c 100644 --- a/emodpy_typhoid/demographics/TyphoidDemographics.py +++ b/emodpy_typhoid/demographics/TyphoidDemographics.py @@ -9,6 +9,9 @@ class TyphoidDemographics(Demographics): """ def __init__(self, nodes, idref="Gridded world grump2.5arcmin", base_file=None): super().__init__( nodes, idref, base_file ) + self.raw["Defaults"]["IndividualAttributes"]["PrevalenceDistributionFlag"] = 0 + self.raw["Defaults"]["IndividualAttributes"]["PrevalenceDistribution1"] = 0 + self.raw["Defaults"]["IndividualAttributes"]["PrevalenceDistribution2"] = 0 #super().SetDefaultProperties() def fromBasicNode(lat=0, lon=0, pop=1e6, name=1, forced_id=1): From 37a28ace458066173c46e5d07f58a4cffb42807f Mon Sep 17 00:00:00 2001 From: Jonathan Bloedow Date: Tue, 19 Sep 2023 21:22:57 -0700 Subject: [PATCH 07/28] All-important __init__.py might have been missing still. --- emodpy_typhoid/__init__.py | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 emodpy_typhoid/__init__.py diff --git a/emodpy_typhoid/__init__.py b/emodpy_typhoid/__init__.py new file mode 100644 index 0000000..e69de29 From 6fe9c48959084b6c8e215f0e7a67e5e67e0e030f Mon Sep 17 00:00:00 2001 From: Jonathan Bloedow Date: Tue, 19 Sep 2023 22:34:37 -0700 Subject: [PATCH 08/28] Added requirements.txt for 2018 model. --- emodpy_typhoid/config.py | 12 ++++++++++++ requirements_2018.txt | 3 +++ 2 files changed, 15 insertions(+) create mode 100644 emodpy_typhoid/config.py create mode 100644 requirements_2018.txt diff --git a/emodpy_typhoid/config.py b/emodpy_typhoid/config.py new file mode 100644 index 0000000..28245c6 --- /dev/null +++ b/emodpy_typhoid/config.py @@ -0,0 +1,12 @@ +def cleanup_for_2018_mode( config ): + # when using 2018 binary + config.parameters.pop( "Serialized_Population_Filenames" ) + config.parameters.pop( "Serialization_Time_Steps" ) + config.parameters.pop( "Demographics_Filename" ) + + config.parameters.Incubation_Period_Distribution = "FIXED_DURATION" # hack + config.parameters.Infectious_Period_Distribution = "FIXED_DURATION" # hack + config.parameters.Base_Incubation_Period = 1 + config.parameters.Base_Infectious_Period = 1 + config.parameters["Listed_Events"] = [] + diff --git a/requirements_2018.txt b/requirements_2018.txt new file mode 100644 index 0000000..7932181 --- /dev/null +++ b/requirements_2018.txt @@ -0,0 +1,3 @@ +emodpy==1.22.0.dev3 +emod-api==1.30.0.dev3 +emod-typhoid==0.0.2.dev1 From 1b3859b1ba83a334bd35018b347afd2645acda27 Mon Sep 17 00:00:00 2001 From: Jonathan Bloedow Date: Tue, 19 Sep 2023 22:35:04 -0700 Subject: [PATCH 09/28] Bump to 0.0.3 --- version.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/version.py b/version.py index 392c239..c060c7d 100644 --- a/version.py +++ b/version.py @@ -1,3 +1 @@ -__version__='0.0.2' - - +__version__='0.0.3' From ec2d7a6c501047a365b725b03d61cecddd2c7f40 Mon Sep 17 00:00:00 2001 From: Jonathan Bloedow Date: Tue, 19 Sep 2023 22:35:47 -0700 Subject: [PATCH 10/28] Update start_here to work natively with 2018 model. --- examples/start_here/example.py | 23 ++++++++++++++--------- examples/start_here/manifest.py | 2 +- 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/examples/start_here/example.py b/examples/start_here/example.py index e3eb2c8..7c5eb1b 100755 --- a/examples/start_here/example.py +++ b/examples/start_here/example.py @@ -31,13 +31,17 @@ def set_param_fn( config ): config.parameters.Simulation_Type = "TYPHOID_SIM" config.parameters.Simulation_Duration = 365.0 config.parameters.Base_Individual_Sample_Rate = 0.25 - #config.parameters.Enable_Birth = 0 # temporary - config.parameters.Minimum_End_Time = 90 + #config.parameters.Minimum_End_Time = 90 # cover up for default bugs in schema - config.parameters.Inset_Chart_Reporting_Start_Year = 1850 + config.parameters.Inset_Chart_Reporting_Start_Year = 1900 config.parameters.Inset_Chart_Reporting_Stop_Year = 2050 config.parameters.Enable_Demographics_Reporting = 0 + config.parameters.Node_Contagion_Decay_Rate = 0.33 + + # when using 2018 binary + import emodpy_typhoid.config as config_utils + config_utils.cleanup_for_2018_mode( config ) return config @@ -92,15 +96,16 @@ def run_test(): task.handle_experiment_completion( experiment ) # download and plot some stuff. - EMODTask.get_file_from_comps( experiment.uid, [ "InsetChart.json" ] ) - task.cache_experiment_metadata_in_sql( experiment.uid ) - import emod_api.channelreports.plot_icj_means as plotter - chan_data = plotter.collect( str( experiment.uid ), "Infected" ) - plotter.display( chan_data, False, "Infected", str( experiment.uid ) ) + if experiment.succeeded: + EMODTask.get_file_from_comps( experiment.uid, [ "InsetChart.json", "ReportTyphoidByAgeAndGender.csv" ] ) + task.cache_experiment_metadata_in_sql( experiment.uid ) + import emod_api.channelreports.plot_icj_means as plotter + chan_data = plotter.collect( str( experiment.uid ), "Infected" ) + plotter.display( chan_data, False, "Infected", str( experiment.uid ) ) if __name__ == "__main__": import emod_typhoid.bootstrap as dtk - dtk.setup( manifest.model_dl_dir ) + #dtk.setup( manifest.model_dl_dir ) run_test() diff --git a/examples/start_here/manifest.py b/examples/start_here/manifest.py index 5648b1d..17f8239 100644 --- a/examples/start_here/manifest.py +++ b/examples/start_here/manifest.py @@ -5,5 +5,5 @@ eradication_path=os.path.join(model_dl_dir, "Eradication") assets_input_dir="Assets" reporters=model_dl_dir -sif="dtk_centos.id" +sif="dtk_centos_2018.id" world_bank_dataset="../world_bank_dataset.csv" From cad0a8cccb926d3371f8f4c6f4d611150664ce0c Mon Sep 17 00:00:00 2001 From: Jonathan Bloedow Date: Tue, 19 Sep 2023 23:09:06 -0700 Subject: [PATCH 11/28] Show how to grab csv report. --- examples/start_here/example.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/examples/start_here/example.py b/examples/start_here/example.py index 7c5eb1b..1f79a10 100755 --- a/examples/start_here/example.py +++ b/examples/start_here/example.py @@ -97,11 +97,11 @@ def run_test(): # download and plot some stuff. if experiment.succeeded: - EMODTask.get_file_from_comps( experiment.uid, [ "InsetChart.json", "ReportTyphoidByAgeAndGender.csv" ] ) + EMODTask.get_file_from_comps( experiment.uid, [ "InsetChart.json", "ReportTyphoidByAgeAndGender.csv" ], group=True ) task.cache_experiment_metadata_in_sql( experiment.uid ) - import emod_api.channelreports.plot_icj_means as plotter - chan_data = plotter.collect( str( experiment.uid ), "Infected" ) - plotter.display( chan_data, False, "Infected", str( experiment.uid ) ) + #import emod_api.channelreports.plot_icj_means as plotter + #chan_data = plotter.collect( str( experiment.uid ), "Infected" ) + #plotter.display( chan_data, False, "Infected", str( experiment.uid ) ) if __name__ == "__main__": From 3399ed8856f9f0b2ed32a3da75bf00a090eec7f6 Mon Sep 17 00:00:00 2001 From: AKraay-IDM <140118269+AKraay-IDM@users.noreply.github.com> Date: Thu, 21 Sep 2023 12:35:18 -0700 Subject: [PATCH 12/28] add pakistan demographics --- .../from_files/TestDemographics_Pakistan.json | 9504 +++++++++++++++++ 1 file changed, 9504 insertions(+) create mode 100644 examples/blantyre_noHINT/from_files/TestDemographics_Pakistan.json diff --git a/examples/blantyre_noHINT/from_files/TestDemographics_Pakistan.json b/examples/blantyre_noHINT/from_files/TestDemographics_Pakistan.json new file mode 100644 index 0000000..f57a32a --- /dev/null +++ b/examples/blantyre_noHINT/from_files/TestDemographics_Pakistan.json @@ -0,0 +1,9504 @@ +{ + "Metadata": { + "DateCreated": "Sun Sep 25 23:19:55 2011", + "Tool": "convertdemog.py", + "Author": "jsteinkraus", + "IdReference": "Gridded world grump2.5arcmin", + "NodeCount": 1 + }, + "Nodes": [ + { + "NodeID": 340461476, + "NodeAttributes": { + "Latitude": -8.5, + "Longitude": 36.5, + "Altitude": 0, + "Airport": 0, + "Region": 1, + "Seaport": 0, + "InitialPopulation": 16000, + "BirthRate": 0 + }, + "IndividualAttributes": { + "AgeDistributionFlag": 3, + "AgeDistribution1": 0.0001, + "AgeDistribution2": 0, + "PrevalenceDistributionFlag": 0, + "PrevalenceDistribution1": 0, + "PrevalenceDistribution2": 0, + "ImmunityDistributionFlag": 0, + "ImmunityDistribution1": 1, + "ImmunityDistribution2": 0, + "RiskDistributionFlag": 0, + "RiskDistribution1": 1, + "RiskDistribution2": 0, + "MigrationHeterogeneityDistributionFlag": 0, + "MigrationHeterogeneityDistribution1": 1, + "MigrationHeterogeneityDistribution2": 0, + "AgeDistribution": { + "NumDistributionAxes": 0, + "ResultUnits": "years", + "ResultScaleFactor": 365, + "ResultValues": [ + 0, + 5, + 10, + 15, + 20, + 25, + 30, + 35, + 40, + 45, + 50, + 55, + 60, + 65, + 70, + 75, + 80, + 85, + 90, + 95, + 100, + 120 + ], + "DistributionValues": [ + 0, + 0.1264, + 0.2502, + 0.3698, + 0.4808, + 0.5786, + 0.6615, + 0.7355, + 0.7981, + 0.8451, + 0.8803, + 0.9108, + 0.938, + 0.9594, + 0.9754, + 0.9868, + 0.994, + 0.9979, + 0.9995, + 0.9999, + 1, + 1 + ] + }, + "MortalityDistributionMale": { + "NumDistributionAxes": 2, + "AxisNames": [ + "age", + "year" + ], + "AxisUnits": [ + "years", + "simulation year" + ], + "AxisScaleFactors": [ + 365, + 1 + ], + "NumPopulationGroups": [ + 44, + 72 + ], + "PopulationGroups": [ + [ + 0, + 0.999, + 1, + 4.999, + 5, + 9.999, + 10, + 14.999, + 15, + 19.999, + 20, + 24.999, + 25, + 29.999, + 30, + 34.999, + 35, + 39.999, + 40, + 44.999, + 45, + 49.999, + 50, + 54.999, + 55, + 59.999, + 60, + 64.999, + 65, + 69.999, + 70, + 74.999, + 75, + 79.999, + 80, + 84.999, + 85, + 89.999, + 90, + 94.999, + 95, + 99.999, + 100, + 100 + ], + [ + 1950, + 1951, + 1952, + 1953, + 1954, + 1955, + 1956, + 1957, + 1958, + 1959, + 1960, + 1961, + 1962, + 1963, + 1964, + 1965, + 1966, + 1967, + 1968, + 1969, + 1970, + 1971, + 1972, + 1973, + 1974, + 1975, + 1976, + 1977, + 1978, + 1979, + 1980, + 1981, + 1982, + 1983, + 1984, + 1985, + 1986, + 1987, + 1988, + 1989, + 1990, + 1991, + 1992, + 1993, + 1994, + 1995, + 1996, + 1997, + 1998, + 1999, + 2000, + 2001, + 2002, + 2003, + 2004, + 2005, + 2006, + 2007, + 2008, + 2009, + 2010, + 2011, + 2012, + 2013, + 2014, + 2015, + 2016, + 2017, + 2018, + 2019, + 2020, + 2021 + ] + ], + "ResultUnits": "Mortality rate in units of 1/year", + "ResultScaleFactor": 0.0027, + "ResultValues": [ + 0.3263, + 0.3263, + 0.0453, + 0.0453, + 0.0046, + 0.0046, + 0.0031, + 0.0031, + 0.0045, + 0.0045, + 0.0065, + 0.0065, + 0.0071, + 0.0071, + 0.0081, + 0.0081, + 0.0097, + 0.0097, + 0.0121, + 0.0121, + 0.015, + 0.015, + 0.0201, + 0.0201, + 0.027, + 0.027, + 0.0387, + 0.0387, + 0.0552, + 0.0552, + 0.0815, + 0.0815, + 0.1233, + 0.1233, + 0.1828, + 0.1828, + 0.2683, + 0.2683, + 0.3938, + 0.3938, + 0.5253, + 0.5253, + 0.6598, + 0.6598, + 0.3106, + 0.3106, + 0.0417, + 0.0417, + 0.0044, + 0.0044, + 0.0029, + 0.0029, + 0.0044, + 0.0044, + 0.0062, + 0.0062, + 0.0068, + 0.0068, + 0.0078, + 0.0078, + 0.0094, + 0.0094, + 0.0117, + 0.0117, + 0.0145, + 0.0145, + 0.0195, + 0.0195, + 0.0262, + 0.0262, + 0.0378, + 0.0378, + 0.054, + 0.054, + 0.0799, + 0.0799, + 0.121, + 0.121, + 0.18, + 0.18, + 0.2648, + 0.2648, + 0.3899, + 0.3899, + 0.52, + 0.52, + 0.656, + 0.656, + 0.2962, + 0.2962, + 0.0388, + 0.0388, + 0.0043, + 0.0043, + 0.0028, + 0.0028, + 0.0042, + 0.0042, + 0.0061, + 0.0061, + 0.0067, + 0.0067, + 0.0076, + 0.0076, + 0.0092, + 0.0092, + 0.0114, + 0.0114, + 0.0142, + 0.0142, + 0.0192, + 0.0192, + 0.0259, + 0.0259, + 0.0373, + 0.0373, + 0.0535, + 0.0535, + 0.0793, + 0.0793, + 0.1203, + 0.1203, + 0.1792, + 0.1792, + 0.2641, + 0.2641, + 0.3891, + 0.3891, + 0.5204, + 0.5204, + 0.6557, + 0.6557, + 0.283, + 0.283, + 0.0361, + 0.0361, + 0.0041, + 0.0041, + 0.0028, + 0.0028, + 0.0041, + 0.0041, + 0.0059, + 0.0059, + 0.0064, + 0.0064, + 0.0074, + 0.0074, + 0.0088, + 0.0088, + 0.0111, + 0.0111, + 0.0139, + 0.0139, + 0.0188, + 0.0188, + 0.0254, + 0.0254, + 0.0368, + 0.0368, + 0.0528, + 0.0528, + 0.0784, + 0.0784, + 0.1191, + 0.1191, + 0.1777, + 0.1777, + 0.2623, + 0.2623, + 0.3871, + 0.3871, + 0.5183, + 0.5183, + 0.6539, + 0.6539, + 0.2705, + 0.2705, + 0.0336, + 0.0336, + 0.004, + 0.004, + 0.0027, + 0.0027, + 0.0041, + 0.0041, + 0.0058, + 0.0058, + 0.0064, + 0.0064, + 0.0073, + 0.0073, + 0.0087, + 0.0087, + 0.0109, + 0.0109, + 0.0138, + 0.0138, + 0.0186, + 0.0186, + 0.0253, + 0.0253, + 0.0365, + 0.0365, + 0.0525, + 0.0525, + 0.0779, + 0.0779, + 0.1184, + 0.1184, + 0.1768, + 0.1768, + 0.2612, + 0.2612, + 0.3857, + 0.3857, + 0.5165, + 0.5165, + 0.6522, + 0.6522, + 0.2587, + 0.2587, + 0.0313, + 0.0313, + 0.0039, + 0.0039, + 0.0026, + 0.0026, + 0.0039, + 0.0039, + 0.0056, + 0.0056, + 0.0061, + 0.0061, + 0.007, + 0.007, + 0.0084, + 0.0084, + 0.0106, + 0.0106, + 0.0134, + 0.0134, + 0.0182, + 0.0182, + 0.0248, + 0.0248, + 0.0359, + 0.0359, + 0.0517, + 0.0517, + 0.077, + 0.077, + 0.1171, + 0.1171, + 0.1752, + 0.1752, + 0.2593, + 0.2593, + 0.3835, + 0.3835, + 0.5144, + 0.5144, + 0.6503, + 0.6503, + 0.2478, + 0.2478, + 0.0293, + 0.0293, + 0.0038, + 0.0038, + 0.0026, + 0.0026, + 0.0038, + 0.0038, + 0.0055, + 0.0055, + 0.006, + 0.006, + 0.0068, + 0.0068, + 0.0082, + 0.0082, + 0.0104, + 0.0104, + 0.0132, + 0.0132, + 0.0179, + 0.0179, + 0.0245, + 0.0245, + 0.0355, + 0.0355, + 0.0513, + 0.0513, + 0.0764, + 0.0764, + 0.1164, + 0.1164, + 0.1742, + 0.1742, + 0.2582, + 0.2582, + 0.3822, + 0.3822, + 0.513, + 0.513, + 0.6491, + 0.6491, + 0.2374, + 0.2374, + 0.0274, + 0.0274, + 0.0036, + 0.0036, + 0.0024, + 0.0024, + 0.0037, + 0.0037, + 0.0053, + 0.0053, + 0.0058, + 0.0058, + 0.0066, + 0.0066, + 0.0079, + 0.0079, + 0.01, + 0.01, + 0.0128, + 0.0128, + 0.0175, + 0.0175, + 0.024, + 0.024, + 0.0349, + 0.0349, + 0.0506, + 0.0506, + 0.0755, + 0.0755, + 0.1152, + 0.1152, + 0.1728, + 0.1728, + 0.2566, + 0.2566, + 0.3808, + 0.3808, + 0.5118, + 0.5118, + 0.6487, + 0.6487, + 0.2278, + 0.2278, + 0.0258, + 0.0258, + 0.0035, + 0.0035, + 0.0024, + 0.0024, + 0.0036, + 0.0036, + 0.0052, + 0.0052, + 0.0056, + 0.0056, + 0.0064, + 0.0064, + 0.0077, + 0.0077, + 0.0098, + 0.0098, + 0.0126, + 0.0126, + 0.0172, + 0.0172, + 0.0237, + 0.0237, + 0.0346, + 0.0346, + 0.0501, + 0.0501, + 0.0749, + 0.0749, + 0.1144, + 0.1144, + 0.172, + 0.172, + 0.2557, + 0.2557, + 0.3799, + 0.3799, + 0.5111, + 0.5111, + 0.6486, + 0.6486, + 0.2188, + 0.2188, + 0.0242, + 0.0242, + 0.0034, + 0.0034, + 0.0023, + 0.0023, + 0.0035, + 0.0035, + 0.005, + 0.005, + 0.0054, + 0.0054, + 0.0062, + 0.0062, + 0.0075, + 0.0075, + 0.0096, + 0.0096, + 0.0123, + 0.0123, + 0.0169, + 0.0169, + 0.0234, + 0.0234, + 0.0341, + 0.0341, + 0.0495, + 0.0495, + 0.0742, + 0.0742, + 0.1135, + 0.1135, + 0.1708, + 0.1708, + 0.2543, + 0.2543, + 0.3784, + 0.3784, + 0.5095, + 0.5095, + 0.6474, + 0.6474, + 0.2105, + 0.2105, + 0.0228, + 0.0228, + 0.0033, + 0.0033, + 0.0022, + 0.0022, + 0.0034, + 0.0034, + 0.0049, + 0.0049, + 0.0053, + 0.0053, + 0.006, + 0.006, + 0.0073, + 0.0073, + 0.0093, + 0.0093, + 0.012, + 0.012, + 0.0166, + 0.0166, + 0.0231, + 0.0231, + 0.0337, + 0.0337, + 0.0492, + 0.0492, + 0.0737, + 0.0737, + 0.1128, + 0.1128, + 0.1701, + 0.1701, + 0.2536, + 0.2536, + 0.3779, + 0.3779, + 0.5096, + 0.5096, + 0.6482, + 0.6482, + 0.2025, + 0.2025, + 0.0215, + 0.0215, + 0.0031, + 0.0031, + 0.0022, + 0.0022, + 0.0033, + 0.0033, + 0.0047, + 0.0047, + 0.0051, + 0.0051, + 0.0058, + 0.0058, + 0.007, + 0.007, + 0.009, + 0.009, + 0.0117, + 0.0117, + 0.0162, + 0.0162, + 0.0227, + 0.0227, + 0.0332, + 0.0332, + 0.0486, + 0.0486, + 0.0731, + 0.0731, + 0.112, + 0.112, + 0.1693, + 0.1693, + 0.253, + 0.253, + 0.3778, + 0.3778, + 0.5104, + 0.5104, + 0.6498, + 0.6498, + 0.1953, + 0.1953, + 0.0203, + 0.0203, + 0.003, + 0.003, + 0.0021, + 0.0021, + 0.0032, + 0.0032, + 0.0045, + 0.0045, + 0.0049, + 0.0049, + 0.0056, + 0.0056, + 0.0068, + 0.0068, + 0.0087, + 0.0087, + 0.0114, + 0.0114, + 0.0159, + 0.0159, + 0.0223, + 0.0223, + 0.0328, + 0.0328, + 0.048, + 0.048, + 0.0724, + 0.0724, + 0.1113, + 0.1113, + 0.1686, + 0.1686, + 0.2525, + 0.2525, + 0.3779, + 0.3779, + 0.5115, + 0.5115, + 0.652, + 0.652, + 0.1884, + 0.1884, + 0.0193, + 0.0193, + 0.0028, + 0.0028, + 0.002, + 0.002, + 0.0031, + 0.0031, + 0.0044, + 0.0044, + 0.0047, + 0.0047, + 0.0053, + 0.0053, + 0.0065, + 0.0065, + 0.0084, + 0.0084, + 0.0111, + 0.0111, + 0.0155, + 0.0155, + 0.0219, + 0.0219, + 0.0324, + 0.0324, + 0.0476, + 0.0476, + 0.0719, + 0.0719, + 0.1107, + 0.1107, + 0.1681, + 0.1681, + 0.2525, + 0.2525, + 0.3786, + 0.3786, + 0.5137, + 0.5137, + 0.6552, + 0.6552, + 0.1823, + 0.1823, + 0.0184, + 0.0184, + 0.0027, + 0.0027, + 0.0019, + 0.0019, + 0.0029, + 0.0029, + 0.0041, + 0.0041, + 0.0044, + 0.0044, + 0.005, + 0.005, + 0.0061, + 0.0061, + 0.008, + 0.008, + 0.0106, + 0.0106, + 0.015, + 0.015, + 0.0214, + 0.0214, + 0.0316, + 0.0316, + 0.0467, + 0.0467, + 0.0708, + 0.0708, + 0.1093, + 0.1093, + 0.1665, + 0.1665, + 0.2509, + 0.2509, + 0.3774, + 0.3774, + 0.5132, + 0.5132, + 0.6558, + 0.6558, + 0.1776, + 0.1776, + 0.0179, + 0.0179, + 0.0028, + 0.0028, + 0.0019, + 0.0019, + 0.0028, + 0.0028, + 0.0039, + 0.0039, + 0.0042, + 0.0042, + 0.0047, + 0.0047, + 0.0058, + 0.0058, + 0.0076, + 0.0076, + 0.0102, + 0.0102, + 0.0145, + 0.0145, + 0.0208, + 0.0208, + 0.0309, + 0.0309, + 0.0459, + 0.0459, + 0.0698, + 0.0698, + 0.1079, + 0.1079, + 0.165, + 0.165, + 0.2492, + 0.2492, + 0.3759, + 0.3759, + 0.5124, + 0.5124, + 0.656, + 0.656, + 0.1721, + 0.1721, + 0.0168, + 0.0168, + 0.0022, + 0.0022, + 0.0016, + 0.0016, + 0.0025, + 0.0025, + 0.0035, + 0.0035, + 0.0037, + 0.0037, + 0.0042, + 0.0042, + 0.0052, + 0.0052, + 0.0069, + 0.0069, + 0.0094, + 0.0094, + 0.0136, + 0.0136, + 0.0198, + 0.0198, + 0.0297, + 0.0297, + 0.0444, + 0.0444, + 0.0679, + 0.0679, + 0.1054, + 0.1054, + 0.1621, + 0.1621, + 0.2461, + 0.2461, + 0.373, + 0.373, + 0.5103, + 0.5103, + 0.6552, + 0.6552, + 0.168, + 0.168, + 0.0162, + 0.0162, + 0.002, + 0.002, + 0.0014, + 0.0014, + 0.0023, + 0.0023, + 0.0032, + 0.0032, + 0.0034, + 0.0034, + 0.0038, + 0.0038, + 0.0048, + 0.0048, + 0.0064, + 0.0064, + 0.0089, + 0.0089, + 0.0129, + 0.0129, + 0.019, + 0.019, + 0.0286, + 0.0286, + 0.0431, + 0.0431, + 0.0662, + 0.0662, + 0.1032, + 0.1032, + 0.1594, + 0.1594, + 0.2431, + 0.2431, + 0.37, + 0.37, + 0.5076, + 0.5076, + 0.6537, + 0.6537, + 0.1644, + 0.1644, + 0.0156, + 0.0156, + 0.0018, + 0.0018, + 0.0013, + 0.0013, + 0.0021, + 0.0021, + 0.003, + 0.003, + 0.0031, + 0.0031, + 0.0035, + 0.0035, + 0.0044, + 0.0044, + 0.0059, + 0.0059, + 0.0083, + 0.0083, + 0.0122, + 0.0122, + 0.0183, + 0.0183, + 0.0276, + 0.0276, + 0.0419, + 0.0419, + 0.0648, + 0.0648, + 0.1012, + 0.1012, + 0.1572, + 0.1572, + 0.2408, + 0.2408, + 0.368, + 0.368, + 0.5064, + 0.5064, + 0.6538, + 0.6538, + 0.1611, + 0.1611, + 0.0152, + 0.0152, + 0.0017, + 0.0017, + 0.0012, + 0.0012, + 0.0019, + 0.0019, + 0.0028, + 0.0028, + 0.0028, + 0.0028, + 0.0032, + 0.0032, + 0.004, + 0.004, + 0.0055, + 0.0055, + 0.0079, + 0.0079, + 0.0117, + 0.0117, + 0.0177, + 0.0177, + 0.0269, + 0.0269, + 0.041, + 0.041, + 0.0636, + 0.0636, + 0.0997, + 0.0997, + 0.1555, + 0.1555, + 0.239, + 0.239, + 0.3665, + 0.3665, + 0.5056, + 0.5056, + 0.654, + 0.654, + 0.158, + 0.158, + 0.0147, + 0.0147, + 0.0015, + 0.0015, + 0.001, + 0.001, + 0.0018, + 0.0018, + 0.0025, + 0.0025, + 0.0026, + 0.0026, + 0.0029, + 0.0029, + 0.0037, + 0.0037, + 0.0051, + 0.0051, + 0.0074, + 0.0074, + 0.0111, + 0.0111, + 0.017, + 0.017, + 0.0261, + 0.0261, + 0.04, + 0.04, + 0.0624, + 0.0624, + 0.0981, + 0.0981, + 0.1536, + 0.1536, + 0.2371, + 0.2371, + 0.3649, + 0.3649, + 0.5049, + 0.5049, + 0.6544, + 0.6544, + 0.1624, + 0.1624, + 0.0174, + 0.0174, + 0.0026, + 0.0026, + 0.0018, + 0.0018, + 0.0041, + 0.0041, + 0.0072, + 0.0072, + 0.0074, + 0.0074, + 0.0071, + 0.0071, + 0.0078, + 0.0078, + 0.009, + 0.009, + 0.0115, + 0.0115, + 0.0156, + 0.0156, + 0.0223, + 0.0223, + 0.0322, + 0.0322, + 0.0476, + 0.0476, + 0.0718, + 0.0718, + 0.1097, + 0.1097, + 0.1654, + 0.1654, + 0.2487, + 0.2487, + 0.3764, + 0.3764, + 0.5163, + 0.5163, + 0.6655, + 0.6655, + 0.1527, + 0.1527, + 0.014, + 0.014, + 0.0015, + 0.0015, + 0.001, + 0.001, + 0.0018, + 0.0018, + 0.0025, + 0.0025, + 0.0026, + 0.0026, + 0.0029, + 0.0029, + 0.0037, + 0.0037, + 0.0051, + 0.0051, + 0.0074, + 0.0074, + 0.0112, + 0.0112, + 0.0171, + 0.0171, + 0.0261, + 0.0261, + 0.04, + 0.04, + 0.0624, + 0.0624, + 0.0982, + 0.0982, + 0.1537, + 0.1537, + 0.2372, + 0.2372, + 0.365, + 0.365, + 0.5049, + 0.5049, + 0.6544, + 0.6544, + 0.1505, + 0.1505, + 0.0137, + 0.0137, + 0.0015, + 0.0015, + 0.0011, + 0.0011, + 0.0018, + 0.0018, + 0.0026, + 0.0026, + 0.0026, + 0.0026, + 0.003, + 0.003, + 0.0038, + 0.0038, + 0.0051, + 0.0051, + 0.0075, + 0.0075, + 0.0112, + 0.0112, + 0.0171, + 0.0171, + 0.0262, + 0.0262, + 0.0401, + 0.0401, + 0.0625, + 0.0625, + 0.0982, + 0.0982, + 0.1538, + 0.1538, + 0.2372, + 0.2372, + 0.3651, + 0.3651, + 0.505, + 0.505, + 0.6545, + 0.6545, + 0.1484, + 0.1484, + 0.0134, + 0.0134, + 0.0016, + 0.0016, + 0.0011, + 0.0011, + 0.0019, + 0.0019, + 0.0027, + 0.0027, + 0.0028, + 0.0028, + 0.0031, + 0.0031, + 0.0039, + 0.0039, + 0.0053, + 0.0053, + 0.0076, + 0.0076, + 0.0114, + 0.0114, + 0.0173, + 0.0173, + 0.0264, + 0.0264, + 0.0404, + 0.0404, + 0.0628, + 0.0628, + 0.0987, + 0.0987, + 0.1543, + 0.1543, + 0.2377, + 0.2377, + 0.3655, + 0.3655, + 0.5053, + 0.5053, + 0.6547, + 0.6547, + 0.1464, + 0.1464, + 0.0131, + 0.0131, + 0.0015, + 0.0015, + 0.001, + 0.001, + 0.0018, + 0.0018, + 0.0027, + 0.0027, + 0.0028, + 0.0028, + 0.0031, + 0.0031, + 0.0038, + 0.0038, + 0.0052, + 0.0052, + 0.0075, + 0.0075, + 0.0113, + 0.0113, + 0.0172, + 0.0172, + 0.0262, + 0.0262, + 0.0402, + 0.0402, + 0.0626, + 0.0626, + 0.0983, + 0.0983, + 0.1539, + 0.1539, + 0.2374, + 0.2374, + 0.3652, + 0.3652, + 0.5051, + 0.5051, + 0.6544, + 0.6544, + 0.1447, + 0.1447, + 0.0129, + 0.0129, + 0.0015, + 0.0015, + 0.0011, + 0.0011, + 0.0018, + 0.0018, + 0.0027, + 0.0027, + 0.0028, + 0.0028, + 0.0031, + 0.0031, + 0.0038, + 0.0038, + 0.0052, + 0.0052, + 0.0076, + 0.0076, + 0.0113, + 0.0113, + 0.0172, + 0.0172, + 0.0263, + 0.0263, + 0.0402, + 0.0402, + 0.0627, + 0.0627, + 0.0985, + 0.0985, + 0.154, + 0.154, + 0.2375, + 0.2375, + 0.3653, + 0.3653, + 0.5052, + 0.5052, + 0.6545, + 0.6545, + 0.143, + 0.143, + 0.0126, + 0.0126, + 0.0016, + 0.0016, + 0.0011, + 0.0011, + 0.0019, + 0.0019, + 0.0028, + 0.0028, + 0.0028, + 0.0028, + 0.0032, + 0.0032, + 0.004, + 0.004, + 0.0054, + 0.0054, + 0.0077, + 0.0077, + 0.0115, + 0.0115, + 0.0174, + 0.0174, + 0.0265, + 0.0265, + 0.0405, + 0.0405, + 0.063, + 0.063, + 0.099, + 0.099, + 0.1546, + 0.1546, + 0.2381, + 0.2381, + 0.3658, + 0.3658, + 0.5054, + 0.5054, + 0.6544, + 0.6544, + 0.1414, + 0.1414, + 0.0124, + 0.0124, + 0.0015, + 0.0015, + 0.0011, + 0.0011, + 0.0018, + 0.0018, + 0.0026, + 0.0026, + 0.0026, + 0.0026, + 0.003, + 0.003, + 0.0037, + 0.0037, + 0.0051, + 0.0051, + 0.0075, + 0.0075, + 0.0112, + 0.0112, + 0.0171, + 0.0171, + 0.0262, + 0.0262, + 0.0401, + 0.0401, + 0.0625, + 0.0625, + 0.0983, + 0.0983, + 0.1539, + 0.1539, + 0.2374, + 0.2374, + 0.3651, + 0.3651, + 0.505, + 0.505, + 0.6544, + 0.6544, + 0.1397, + 0.1397, + 0.0122, + 0.0122, + 0.0015, + 0.0015, + 0.001, + 0.001, + 0.0018, + 0.0018, + 0.0025, + 0.0025, + 0.0026, + 0.0026, + 0.0029, + 0.0029, + 0.0037, + 0.0037, + 0.0051, + 0.0051, + 0.0074, + 0.0074, + 0.0112, + 0.0112, + 0.0171, + 0.0171, + 0.0261, + 0.0261, + 0.04, + 0.04, + 0.0624, + 0.0624, + 0.0982, + 0.0982, + 0.1537, + 0.1537, + 0.2372, + 0.2372, + 0.365, + 0.365, + 0.5049, + 0.5049, + 0.6544, + 0.6544, + 0.1381, + 0.1381, + 0.012, + 0.012, + 0.0014, + 0.0014, + 0.001, + 0.001, + 0.0017, + 0.0017, + 0.0024, + 0.0024, + 0.0025, + 0.0025, + 0.0028, + 0.0028, + 0.0036, + 0.0036, + 0.0049, + 0.0049, + 0.0072, + 0.0072, + 0.0109, + 0.0109, + 0.0168, + 0.0168, + 0.0258, + 0.0258, + 0.0396, + 0.0396, + 0.0619, + 0.0619, + 0.0974, + 0.0974, + 0.1529, + 0.1529, + 0.2363, + 0.2363, + 0.3643, + 0.3643, + 0.5046, + 0.5046, + 0.6545, + 0.6545, + 0.1365, + 0.1365, + 0.0118, + 0.0118, + 0.0014, + 0.0014, + 0.001, + 0.001, + 0.0017, + 0.0017, + 0.0024, + 0.0024, + 0.0024, + 0.0024, + 0.0027, + 0.0027, + 0.0035, + 0.0035, + 0.0048, + 0.0048, + 0.0071, + 0.0071, + 0.0108, + 0.0108, + 0.0166, + 0.0166, + 0.0256, + 0.0256, + 0.0393, + 0.0393, + 0.0615, + 0.0615, + 0.097, + 0.097, + 0.1524, + 0.1524, + 0.2358, + 0.2358, + 0.3639, + 0.3639, + 0.5044, + 0.5044, + 0.6548, + 0.6548, + 0.1349, + 0.1349, + 0.0116, + 0.0116, + 0.0014, + 0.0014, + 0.0009, + 0.0009, + 0.0016, + 0.0016, + 0.0023, + 0.0023, + 0.0024, + 0.0024, + 0.0027, + 0.0027, + 0.0034, + 0.0034, + 0.0047, + 0.0047, + 0.007, + 0.007, + 0.0107, + 0.0107, + 0.0165, + 0.0165, + 0.0254, + 0.0254, + 0.0391, + 0.0391, + 0.0613, + 0.0613, + 0.0966, + 0.0966, + 0.152, + 0.152, + 0.2354, + 0.2354, + 0.3636, + 0.3636, + 0.5043, + 0.5043, + 0.6548, + 0.6548, + 0.1332, + 0.1332, + 0.0113, + 0.0113, + 0.0013, + 0.0013, + 0.0009, + 0.0009, + 0.0016, + 0.0016, + 0.0022, + 0.0022, + 0.0023, + 0.0023, + 0.0025, + 0.0025, + 0.0032, + 0.0032, + 0.0046, + 0.0046, + 0.0068, + 0.0068, + 0.0104, + 0.0104, + 0.0162, + 0.0162, + 0.025, + 0.025, + 0.0386, + 0.0386, + 0.0607, + 0.0607, + 0.0959, + 0.0959, + 0.1511, + 0.1511, + 0.2345, + 0.2345, + 0.3629, + 0.3629, + 0.504, + 0.504, + 0.655, + 0.655, + 0.1313, + 0.1313, + 0.0111, + 0.0111, + 0.0012, + 0.0012, + 0.0009, + 0.0009, + 0.0015, + 0.0015, + 0.0022, + 0.0022, + 0.0022, + 0.0022, + 0.0025, + 0.0025, + 0.0032, + 0.0032, + 0.0045, + 0.0045, + 0.0067, + 0.0067, + 0.0103, + 0.0103, + 0.016, + 0.016, + 0.0248, + 0.0248, + 0.0384, + 0.0384, + 0.0604, + 0.0604, + 0.0955, + 0.0955, + 0.1507, + 0.1507, + 0.2341, + 0.2341, + 0.3625, + 0.3625, + 0.5038, + 0.5038, + 0.6552, + 0.6552, + 0.1294, + 0.1294, + 0.0108, + 0.0108, + 0.0012, + 0.0012, + 0.0008, + 0.0008, + 0.0014, + 0.0014, + 0.002, + 0.002, + 0.0021, + 0.0021, + 0.0023, + 0.0023, + 0.003, + 0.003, + 0.0042, + 0.0042, + 0.0064, + 0.0064, + 0.0099, + 0.0099, + 0.0156, + 0.0156, + 0.0242, + 0.0242, + 0.0377, + 0.0377, + 0.0594, + 0.0594, + 0.0942, + 0.0942, + 0.1492, + 0.1492, + 0.2325, + 0.2325, + 0.361, + 0.361, + 0.5028, + 0.5028, + 0.655, + 0.655, + 0.1274, + 0.1274, + 0.0106, + 0.0106, + 0.0011, + 0.0011, + 0.0008, + 0.0008, + 0.0014, + 0.0014, + 0.002, + 0.002, + 0.002, + 0.002, + 0.0023, + 0.0023, + 0.0029, + 0.0029, + 0.0041, + 0.0041, + 0.0063, + 0.0063, + 0.0098, + 0.0098, + 0.0155, + 0.0155, + 0.024, + 0.024, + 0.0374, + 0.0374, + 0.059, + 0.059, + 0.0937, + 0.0937, + 0.1485, + 0.1485, + 0.2316, + 0.2316, + 0.3601, + 0.3601, + 0.5018, + 0.5018, + 0.654, + 0.654, + 0.1254, + 0.1254, + 0.0103, + 0.0103, + 0.0012, + 0.0012, + 0.0009, + 0.0009, + 0.0015, + 0.0015, + 0.0022, + 0.0022, + 0.0022, + 0.0022, + 0.0025, + 0.0025, + 0.0032, + 0.0032, + 0.0045, + 0.0045, + 0.0067, + 0.0067, + 0.0103, + 0.0103, + 0.0161, + 0.0161, + 0.0248, + 0.0248, + 0.0385, + 0.0385, + 0.0604, + 0.0604, + 0.0956, + 0.0956, + 0.1508, + 0.1508, + 0.2342, + 0.2342, + 0.3626, + 0.3626, + 0.5038, + 0.5038, + 0.6552, + 0.6552, + 0.1233, + 0.1233, + 0.01, + 0.01, + 0.0013, + 0.0013, + 0.0009, + 0.0009, + 0.0016, + 0.0016, + 0.0022, + 0.0022, + 0.0023, + 0.0023, + 0.0026, + 0.0026, + 0.0033, + 0.0033, + 0.0046, + 0.0046, + 0.0068, + 0.0068, + 0.0104, + 0.0104, + 0.0162, + 0.0162, + 0.0251, + 0.0251, + 0.0387, + 0.0387, + 0.0608, + 0.0608, + 0.096, + 0.096, + 0.1513, + 0.1513, + 0.2347, + 0.2347, + 0.363, + 0.363, + 0.504, + 0.504, + 0.6551, + 0.6551, + 0.1211, + 0.1211, + 0.0098, + 0.0098, + 0.0013, + 0.0013, + 0.0009, + 0.0009, + 0.0016, + 0.0016, + 0.0022, + 0.0022, + 0.0023, + 0.0023, + 0.0026, + 0.0026, + 0.0033, + 0.0033, + 0.0046, + 0.0046, + 0.0068, + 0.0068, + 0.0104, + 0.0104, + 0.0162, + 0.0162, + 0.025, + 0.025, + 0.0387, + 0.0387, + 0.0608, + 0.0608, + 0.096, + 0.096, + 0.1512, + 0.1512, + 0.2347, + 0.2347, + 0.363, + 0.363, + 0.504, + 0.504, + 0.655, + 0.655, + 0.1188, + 0.1188, + 0.0095, + 0.0095, + 0.0012, + 0.0012, + 0.0009, + 0.0009, + 0.0016, + 0.0016, + 0.0022, + 0.0022, + 0.0023, + 0.0023, + 0.0025, + 0.0025, + 0.0032, + 0.0032, + 0.0045, + 0.0045, + 0.0068, + 0.0068, + 0.0104, + 0.0104, + 0.0162, + 0.0162, + 0.025, + 0.025, + 0.0386, + 0.0386, + 0.0606, + 0.0606, + 0.0958, + 0.0958, + 0.151, + 0.151, + 0.2344, + 0.2344, + 0.3628, + 0.3628, + 0.5039, + 0.5039, + 0.6551, + 0.6551, + 0.1166, + 0.1166, + 0.0092, + 0.0092, + 0.0012, + 0.0012, + 0.0008, + 0.0008, + 0.0015, + 0.0015, + 0.0021, + 0.0021, + 0.0022, + 0.0022, + 0.0024, + 0.0024, + 0.0031, + 0.0031, + 0.0044, + 0.0044, + 0.0066, + 0.0066, + 0.0102, + 0.0102, + 0.0159, + 0.0159, + 0.0246, + 0.0246, + 0.0382, + 0.0382, + 0.0601, + 0.0601, + 0.095, + 0.095, + 0.1502, + 0.1502, + 0.2335, + 0.2335, + 0.362, + 0.362, + 0.5035, + 0.5035, + 0.6551, + 0.6551, + 0.1144, + 0.1144, + 0.009, + 0.009, + 0.0012, + 0.0012, + 0.0008, + 0.0008, + 0.0015, + 0.0015, + 0.0021, + 0.0021, + 0.0022, + 0.0022, + 0.0024, + 0.0024, + 0.0031, + 0.0031, + 0.0044, + 0.0044, + 0.0066, + 0.0066, + 0.0101, + 0.0101, + 0.0158, + 0.0158, + 0.0245, + 0.0245, + 0.0381, + 0.0381, + 0.0599, + 0.0599, + 0.0948, + 0.0948, + 0.1499, + 0.1499, + 0.2331, + 0.2331, + 0.3614, + 0.3614, + 0.5027, + 0.5027, + 0.6543, + 0.6543, + 0.1118, + 0.1118, + 0.0087, + 0.0087, + 0.0012, + 0.0012, + 0.0009, + 0.0009, + 0.0016, + 0.0016, + 0.0022, + 0.0022, + 0.0022, + 0.0022, + 0.0025, + 0.0025, + 0.0032, + 0.0032, + 0.0045, + 0.0045, + 0.0068, + 0.0068, + 0.0104, + 0.0104, + 0.0161, + 0.0161, + 0.0249, + 0.0249, + 0.0385, + 0.0385, + 0.0606, + 0.0606, + 0.0957, + 0.0957, + 0.1509, + 0.1509, + 0.2343, + 0.2343, + 0.3627, + 0.3627, + 0.5039, + 0.5039, + 0.6551, + 0.6551, + 0.1092, + 0.1092, + 0.0083, + 0.0083, + 0.0012, + 0.0012, + 0.0009, + 0.0009, + 0.0016, + 0.0016, + 0.0023, + 0.0023, + 0.0023, + 0.0023, + 0.0026, + 0.0026, + 0.0033, + 0.0033, + 0.0046, + 0.0046, + 0.0068, + 0.0068, + 0.0104, + 0.0104, + 0.0162, + 0.0162, + 0.0251, + 0.0251, + 0.0387, + 0.0387, + 0.0608, + 0.0608, + 0.096, + 0.096, + 0.1512, + 0.1512, + 0.2347, + 0.2347, + 0.363, + 0.363, + 0.504, + 0.504, + 0.6551, + 0.6551, + 0.1066, + 0.1066, + 0.008, + 0.008, + 0.0014, + 0.0014, + 0.001, + 0.001, + 0.0017, + 0.0017, + 0.0025, + 0.0025, + 0.0025, + 0.0025, + 0.0028, + 0.0028, + 0.0036, + 0.0036, + 0.0049, + 0.0049, + 0.0072, + 0.0072, + 0.0109, + 0.0109, + 0.0167, + 0.0167, + 0.0257, + 0.0257, + 0.0395, + 0.0395, + 0.0618, + 0.0618, + 0.0973, + 0.0973, + 0.1527, + 0.1527, + 0.2362, + 0.2362, + 0.3642, + 0.3642, + 0.5046, + 0.5046, + 0.6549, + 0.6549, + 0.104, + 0.104, + 0.0077, + 0.0077, + 0.0013, + 0.0013, + 0.001, + 0.001, + 0.0017, + 0.0017, + 0.0024, + 0.0024, + 0.0024, + 0.0024, + 0.0027, + 0.0027, + 0.0035, + 0.0035, + 0.0048, + 0.0048, + 0.0071, + 0.0071, + 0.0108, + 0.0108, + 0.0166, + 0.0166, + 0.0255, + 0.0255, + 0.0393, + 0.0393, + 0.0615, + 0.0615, + 0.0969, + 0.0969, + 0.1523, + 0.1523, + 0.2358, + 0.2358, + 0.3639, + 0.3639, + 0.5044, + 0.5044, + 0.6548, + 0.6548, + 0.1014, + 0.1014, + 0.0074, + 0.0074, + 0.0014, + 0.0014, + 0.001, + 0.001, + 0.0017, + 0.0017, + 0.0024, + 0.0024, + 0.0025, + 0.0025, + 0.0028, + 0.0028, + 0.0036, + 0.0036, + 0.005, + 0.005, + 0.0072, + 0.0072, + 0.011, + 0.011, + 0.0168, + 0.0168, + 0.0258, + 0.0258, + 0.0396, + 0.0396, + 0.062, + 0.062, + 0.0976, + 0.0976, + 0.153, + 0.153, + 0.2365, + 0.2365, + 0.3645, + 0.3645, + 0.5047, + 0.5047, + 0.6548, + 0.6548, + 0.0989, + 0.0989, + 0.0071, + 0.0071, + 0.0013, + 0.0013, + 0.001, + 0.001, + 0.0017, + 0.0017, + 0.0024, + 0.0024, + 0.0024, + 0.0024, + 0.0027, + 0.0027, + 0.0035, + 0.0035, + 0.0048, + 0.0048, + 0.0071, + 0.0071, + 0.0108, + 0.0108, + 0.0167, + 0.0167, + 0.0256, + 0.0256, + 0.0394, + 0.0394, + 0.0616, + 0.0616, + 0.0971, + 0.0971, + 0.1525, + 0.1525, + 0.236, + 0.236, + 0.3641, + 0.3641, + 0.5046, + 0.5046, + 0.6548, + 0.6548, + 0.0963, + 0.0963, + 0.0068, + 0.0068, + 0.0013, + 0.0013, + 0.0009, + 0.0009, + 0.0016, + 0.0016, + 0.0023, + 0.0023, + 0.0023, + 0.0023, + 0.0026, + 0.0026, + 0.0033, + 0.0033, + 0.0046, + 0.0046, + 0.0069, + 0.0069, + 0.0105, + 0.0105, + 0.0163, + 0.0163, + 0.0251, + 0.0251, + 0.0388, + 0.0388, + 0.0609, + 0.0609, + 0.0961, + 0.0961, + 0.1513, + 0.1513, + 0.2347, + 0.2347, + 0.3628, + 0.3628, + 0.5034, + 0.5034, + 0.6542, + 0.6542, + 0.094, + 0.094, + 0.0066, + 0.0066, + 0.0012, + 0.0012, + 0.0009, + 0.0009, + 0.0015, + 0.0015, + 0.0022, + 0.0022, + 0.0022, + 0.0022, + 0.0025, + 0.0025, + 0.0032, + 0.0032, + 0.0044, + 0.0044, + 0.0067, + 0.0067, + 0.0103, + 0.0103, + 0.016, + 0.016, + 0.0248, + 0.0248, + 0.0384, + 0.0384, + 0.0603, + 0.0603, + 0.0953, + 0.0953, + 0.1505, + 0.1505, + 0.2338, + 0.2338, + 0.362, + 0.362, + 0.5031, + 0.5031, + 0.6544, + 0.6544, + 0.0919, + 0.0919, + 0.0064, + 0.0064, + 0.0012, + 0.0012, + 0.0009, + 0.0009, + 0.0015, + 0.0015, + 0.0022, + 0.0022, + 0.0022, + 0.0022, + 0.0024, + 0.0024, + 0.0032, + 0.0032, + 0.0044, + 0.0044, + 0.0067, + 0.0067, + 0.0102, + 0.0102, + 0.016, + 0.016, + 0.0247, + 0.0247, + 0.0383, + 0.0383, + 0.0603, + 0.0603, + 0.0953, + 0.0953, + 0.1505, + 0.1505, + 0.2339, + 0.2339, + 0.3624, + 0.3624, + 0.5037, + 0.5037, + 0.6553, + 0.6553, + 0.09, + 0.09, + 0.0062, + 0.0062, + 0.0011, + 0.0011, + 0.0008, + 0.0008, + 0.0015, + 0.0015, + 0.0021, + 0.0021, + 0.0021, + 0.0021, + 0.0024, + 0.0024, + 0.0031, + 0.0031, + 0.0043, + 0.0043, + 0.0066, + 0.0066, + 0.0101, + 0.0101, + 0.0158, + 0.0158, + 0.0245, + 0.0245, + 0.038, + 0.038, + 0.0599, + 0.0599, + 0.0948, + 0.0948, + 0.1498, + 0.1498, + 0.233, + 0.233, + 0.3614, + 0.3614, + 0.5027, + 0.5027, + 0.6544, + 0.6544, + 0.0882, + 0.0882, + 0.006, + 0.006, + 0.0012, + 0.0012, + 0.0008, + 0.0008, + 0.0015, + 0.0015, + 0.0021, + 0.0021, + 0.0022, + 0.0022, + 0.0024, + 0.0024, + 0.0031, + 0.0031, + 0.0044, + 0.0044, + 0.0066, + 0.0066, + 0.0101, + 0.0101, + 0.0158, + 0.0158, + 0.0245, + 0.0245, + 0.0381, + 0.0381, + 0.0599, + 0.0599, + 0.0948, + 0.0948, + 0.1499, + 0.1499, + 0.2332, + 0.2332, + 0.3615, + 0.3615, + 0.5028, + 0.5028, + 0.6544, + 0.6544, + 0.0867, + 0.0867, + 0.0058, + 0.0058, + 0.0012, + 0.0012, + 0.0009, + 0.0009, + 0.0015, + 0.0015, + 0.0022, + 0.0022, + 0.0022, + 0.0022, + 0.0024, + 0.0024, + 0.0032, + 0.0032, + 0.0044, + 0.0044, + 0.0067, + 0.0067, + 0.0102, + 0.0102, + 0.016, + 0.016, + 0.0247, + 0.0247, + 0.0383, + 0.0383, + 0.0603, + 0.0603, + 0.0953, + 0.0953, + 0.1505, + 0.1505, + 0.2339, + 0.2339, + 0.3624, + 0.3624, + 0.5037, + 0.5037, + 0.6553, + 0.6553, + 0.0864, + 0.0864, + 0.0062, + 0.0062, + 0.0015, + 0.0015, + 0.0012, + 0.0012, + 0.0018, + 0.0018, + 0.0024, + 0.0024, + 0.0024, + 0.0024, + 0.0027, + 0.0027, + 0.0034, + 0.0034, + 0.0048, + 0.0048, + 0.007, + 0.007, + 0.0107, + 0.0107, + 0.0165, + 0.0165, + 0.0254, + 0.0254, + 0.0391, + 0.0391, + 0.0611, + 0.0611, + 0.0965, + 0.0965, + 0.1516, + 0.1516, + 0.2348, + 0.2348, + 0.3631, + 0.3631, + 0.5044, + 0.5044, + 0.6559, + 0.6559, + 0.084, + 0.084, + 0.0055, + 0.0055, + 0.0012, + 0.0012, + 0.0009, + 0.0009, + 0.0015, + 0.0015, + 0.0022, + 0.0022, + 0.0022, + 0.0022, + 0.0025, + 0.0025, + 0.0032, + 0.0032, + 0.0044, + 0.0044, + 0.0067, + 0.0067, + 0.0103, + 0.0103, + 0.016, + 0.016, + 0.0248, + 0.0248, + 0.0384, + 0.0384, + 0.0603, + 0.0603, + 0.0954, + 0.0954, + 0.1506, + 0.1506, + 0.234, + 0.234, + 0.3625, + 0.3625, + 0.5038, + 0.5038, + 0.6553, + 0.6553, + 0.0826, + 0.0826, + 0.0054, + 0.0054, + 0.0012, + 0.0012, + 0.0009, + 0.0009, + 0.0016, + 0.0016, + 0.0023, + 0.0023, + 0.0024, + 0.0024, + 0.0026, + 0.0026, + 0.0033, + 0.0033, + 0.0046, + 0.0046, + 0.0069, + 0.0069, + 0.0105, + 0.0105, + 0.0163, + 0.0163, + 0.0251, + 0.0251, + 0.0388, + 0.0388, + 0.0608, + 0.0608, + 0.096, + 0.096, + 0.1513, + 0.1513, + 0.2348, + 0.2348, + 0.3631, + 0.3631, + 0.5042, + 0.5042, + 0.6552, + 0.6552, + 0.0812, + 0.0812, + 0.0052, + 0.0052, + 0.0012, + 0.0012, + 0.0009, + 0.0009, + 0.0016, + 0.0016, + 0.0024, + 0.0024, + 0.0025, + 0.0025, + 0.0027, + 0.0027, + 0.0034, + 0.0034, + 0.0047, + 0.0047, + 0.007, + 0.007, + 0.0106, + 0.0106, + 0.0164, + 0.0164, + 0.0252, + 0.0252, + 0.0389, + 0.0389, + 0.061, + 0.061, + 0.0963, + 0.0963, + 0.1516, + 0.1516, + 0.235, + 0.235, + 0.3633, + 0.3633, + 0.5043, + 0.5043, + 0.6553, + 0.6553, + 0.0798, + 0.0798, + 0.0051, + 0.0051, + 0.0012, + 0.0012, + 0.0009, + 0.0009, + 0.0016, + 0.0016, + 0.0024, + 0.0024, + 0.0024, + 0.0024, + 0.0027, + 0.0027, + 0.0034, + 0.0034, + 0.0047, + 0.0047, + 0.0069, + 0.0069, + 0.0106, + 0.0106, + 0.0164, + 0.0164, + 0.0252, + 0.0252, + 0.0389, + 0.0389, + 0.061, + 0.061, + 0.0963, + 0.0963, + 0.1516, + 0.1516, + 0.235, + 0.235, + 0.3633, + 0.3633, + 0.5043, + 0.5043, + 0.6553, + 0.6553, + 0.0783, + 0.0783, + 0.005, + 0.005, + 0.0012, + 0.0012, + 0.0009, + 0.0009, + 0.0016, + 0.0016, + 0.0023, + 0.0023, + 0.0024, + 0.0024, + 0.0026, + 0.0026, + 0.0033, + 0.0033, + 0.0046, + 0.0046, + 0.0068, + 0.0068, + 0.0105, + 0.0105, + 0.0162, + 0.0162, + 0.025, + 0.025, + 0.0387, + 0.0387, + 0.0607, + 0.0607, + 0.0959, + 0.0959, + 0.1512, + 0.1512, + 0.2346, + 0.2346, + 0.363, + 0.363, + 0.5042, + 0.5042, + 0.6555, + 0.6555, + 0.0764, + 0.0764, + 0.0048, + 0.0048, + 0.0012, + 0.0012, + 0.0009, + 0.0009, + 0.0016, + 0.0016, + 0.0023, + 0.0023, + 0.0023, + 0.0023, + 0.0026, + 0.0026, + 0.0033, + 0.0033, + 0.0046, + 0.0046, + 0.0068, + 0.0068, + 0.0104, + 0.0104, + 0.0162, + 0.0162, + 0.025, + 0.025, + 0.0386, + 0.0386, + 0.0607, + 0.0607, + 0.0959, + 0.0959, + 0.1511, + 0.1511, + 0.2345, + 0.2345, + 0.3629, + 0.3629, + 0.504, + 0.504, + 0.6553, + 0.6553, + 0.0746, + 0.0746, + 0.0046, + 0.0046, + 0.0012, + 0.0012, + 0.0009, + 0.0009, + 0.0016, + 0.0016, + 0.0023, + 0.0023, + 0.0023, + 0.0023, + 0.0026, + 0.0026, + 0.0033, + 0.0033, + 0.0046, + 0.0046, + 0.0068, + 0.0068, + 0.0104, + 0.0104, + 0.0162, + 0.0162, + 0.025, + 0.025, + 0.0387, + 0.0387, + 0.0607, + 0.0607, + 0.0959, + 0.0959, + 0.1512, + 0.1512, + 0.2346, + 0.2346, + 0.363, + 0.363, + 0.5041, + 0.5041, + 0.6554, + 0.6554, + 0.0729, + 0.0729, + 0.0045, + 0.0045, + 0.0012, + 0.0012, + 0.0009, + 0.0009, + 0.0015, + 0.0015, + 0.0022, + 0.0022, + 0.0023, + 0.0023, + 0.0025, + 0.0025, + 0.0032, + 0.0032, + 0.0045, + 0.0045, + 0.0067, + 0.0067, + 0.0103, + 0.0103, + 0.016, + 0.016, + 0.0248, + 0.0248, + 0.0384, + 0.0384, + 0.0603, + 0.0603, + 0.0954, + 0.0954, + 0.1505, + 0.1505, + 0.2338, + 0.2338, + 0.3621, + 0.3621, + 0.5032, + 0.5032, + 0.6546, + 0.6546, + 0.071, + 0.071, + 0.0043, + 0.0043, + 0.0012, + 0.0012, + 0.0009, + 0.0009, + 0.0016, + 0.0016, + 0.0022, + 0.0022, + 0.0023, + 0.0023, + 0.0025, + 0.0025, + 0.0032, + 0.0032, + 0.0045, + 0.0045, + 0.0067, + 0.0067, + 0.0103, + 0.0103, + 0.016, + 0.016, + 0.0248, + 0.0248, + 0.0384, + 0.0384, + 0.0603, + 0.0603, + 0.0954, + 0.0954, + 0.1505, + 0.1505, + 0.2338, + 0.2338, + 0.3621, + 0.3621, + 0.5032, + 0.5032, + 0.6546, + 0.6546, + 0.0691, + 0.0691, + 0.0041, + 0.0041, + 0.0011, + 0.0011, + 0.0008, + 0.0008, + 0.0015, + 0.0015, + 0.0022, + 0.0022, + 0.0022, + 0.0022, + 0.0024, + 0.0024, + 0.0031, + 0.0031, + 0.0044, + 0.0044, + 0.0066, + 0.0066, + 0.0101, + 0.0101, + 0.0158, + 0.0158, + 0.0245, + 0.0245, + 0.038, + 0.038, + 0.0598, + 0.0598, + 0.0947, + 0.0947, + 0.1497, + 0.1497, + 0.2329, + 0.2329, + 0.3613, + 0.3613, + 0.5027, + 0.5027, + 0.6544, + 0.6544, + 0.0672, + 0.0672, + 0.0039, + 0.0039, + 0.0011, + 0.0011, + 0.0008, + 0.0008, + 0.0015, + 0.0015, + 0.0021, + 0.0021, + 0.0022, + 0.0022, + 0.0024, + 0.0024, + 0.0031, + 0.0031, + 0.0043, + 0.0043, + 0.0066, + 0.0066, + 0.0101, + 0.0101, + 0.0158, + 0.0158, + 0.0245, + 0.0245, + 0.038, + 0.038, + 0.0598, + 0.0598, + 0.0947, + 0.0947, + 0.1497, + 0.1497, + 0.2329, + 0.2329, + 0.3613, + 0.3613, + 0.5027, + 0.5027, + 0.6544, + 0.6544, + 0.0654, + 0.0654, + 0.0038, + 0.0038, + 0.0011, + 0.0011, + 0.0008, + 0.0008, + 0.0014, + 0.0014, + 0.002, + 0.002, + 0.0021, + 0.0021, + 0.0023, + 0.0023, + 0.003, + 0.003, + 0.0042, + 0.0042, + 0.0064, + 0.0064, + 0.0099, + 0.0099, + 0.0156, + 0.0156, + 0.0242, + 0.0242, + 0.0377, + 0.0377, + 0.0594, + 0.0594, + 0.0942, + 0.0942, + 0.1492, + 0.1492, + 0.2324, + 0.2324, + 0.361, + 0.361, + 0.5028, + 0.5028, + 0.6552, + 0.6552, + 0.0636, + 0.0636, + 0.0036, + 0.0036, + 0.001, + 0.001, + 0.0008, + 0.0008, + 0.0014, + 0.0014, + 0.002, + 0.002, + 0.0021, + 0.0021, + 0.0023, + 0.0023, + 0.003, + 0.003, + 0.0042, + 0.0042, + 0.0064, + 0.0064, + 0.0099, + 0.0099, + 0.0156, + 0.0156, + 0.0242, + 0.0242, + 0.0376, + 0.0376, + 0.0593, + 0.0593, + 0.0941, + 0.0941, + 0.149, + 0.149, + 0.2323, + 0.2323, + 0.3609, + 0.3609, + 0.5028, + 0.5028, + 0.6551, + 0.6551, + 0.0618, + 0.0618, + 0.0035, + 0.0035, + 0.001, + 0.001, + 0.0008, + 0.0008, + 0.0014, + 0.0014, + 0.002, + 0.002, + 0.002, + 0.002, + 0.0022, + 0.0022, + 0.0028, + 0.0028, + 0.0041, + 0.0041, + 0.0062, + 0.0062, + 0.0097, + 0.0097, + 0.0153, + 0.0153, + 0.0238, + 0.0238, + 0.0371, + 0.0371, + 0.0587, + 0.0587, + 0.0932, + 0.0932, + 0.148, + 0.148, + 0.2311, + 0.2311, + 0.3596, + 0.3596, + 0.5016, + 0.5016, + 0.6542, + 0.6542, + 0.06, + 0.06, + 0.0033, + 0.0033, + 0.001, + 0.001, + 0.0008, + 0.0008, + 0.0012, + 0.0012, + 0.0017, + 0.0017, + 0.0017, + 0.0017, + 0.002, + 0.002, + 0.0028, + 0.0028, + 0.0042, + 0.0042, + 0.0067, + 0.0067, + 0.0107, + 0.0107, + 0.0173, + 0.0173, + 0.0273, + 0.0273, + 0.0428, + 0.0428, + 0.0664, + 0.0664, + 0.1023, + 0.1023, + 0.1637, + 0.1637, + 0.2641, + 0.2641, + 0.3947, + 0.3947, + 0.5368, + 0.5368, + 0.6889, + 0.6889, + 0.0583, + 0.0583, + 0.0032, + 0.0032, + 0.001, + 0.001, + 0.0008, + 0.0008, + 0.0013, + 0.0013, + 0.0018, + 0.0018, + 0.0018, + 0.0018, + 0.0021, + 0.0021, + 0.0029, + 0.0029, + 0.0044, + 0.0044, + 0.0069, + 0.0069, + 0.011, + 0.011, + 0.0176, + 0.0176, + 0.028, + 0.028, + 0.0441, + 0.0441, + 0.0684, + 0.0684, + 0.105, + 0.105, + 0.1682, + 0.1682, + 0.2679, + 0.2679, + 0.3982, + 0.3982, + 0.5404, + 0.5404, + 0.6924, + 0.6924 + ] + }, + "MortalityDistributionFemale": { + "NumDistributionAxes": 2, + "AxisNames": [ + "age", + "year" + ], + "AxisUnits": [ + "years", + "simulation year" + ], + "AxisScaleFactors": [ + 365, + 1 + ], + "NumPopulationGroups": [ + 44, + 72 + ], + "PopulationGroups": [ + [ + 0, + 0.999, + 1, + 4.999, + 5, + 9.999, + 10, + 14.999, + 15, + 19.999, + 20, + 24.999, + 25, + 29.999, + 30, + 34.999, + 35, + 39.999, + 40, + 44.999, + 45, + 49.999, + 50, + 54.999, + 55, + 59.999, + 60, + 64.999, + 65, + 69.999, + 70, + 74.999, + 75, + 79.999, + 80, + 84.999, + 85, + 89.999, + 90, + 94.999, + 95, + 99.999, + 100, + 100 + ], + [ + 1950, + 1951, + 1952, + 1953, + 1954, + 1955, + 1956, + 1957, + 1958, + 1959, + 1960, + 1961, + 1962, + 1963, + 1964, + 1965, + 1966, + 1967, + 1968, + 1969, + 1970, + 1971, + 1972, + 1973, + 1974, + 1975, + 1976, + 1977, + 1978, + 1979, + 1980, + 1981, + 1982, + 1983, + 1984, + 1985, + 1986, + 1987, + 1988, + 1989, + 1990, + 1991, + 1992, + 1993, + 1994, + 1995, + 1996, + 1997, + 1998, + 1999, + 2000, + 2001, + 2002, + 2003, + 2004, + 2005, + 2006, + 2007, + 2008, + 2009, + 2010, + 2011, + 2012, + 2013, + 2014, + 2015, + 2016, + 2017, + 2018, + 2019, + 2020, + 2021 + ] + ], + "ResultUnits": "Mortality rate in units of 1/year", + "ResultScaleFactor": 0.0027, + "ResultValues": [ + 0.313, + 0.313, + 0.0425, + 0.0425, + 0.0078, + 0.0078, + 0.0062, + 0.0062, + 0.0081, + 0.0081, + 0.0102, + 0.0102, + 0.0115, + 0.0115, + 0.013, + 0.013, + 0.0144, + 0.0144, + 0.0156, + 0.0156, + 0.0172, + 0.0172, + 0.0226, + 0.0226, + 0.0294, + 0.0294, + 0.0436, + 0.0436, + 0.0606, + 0.0606, + 0.091, + 0.091, + 0.1352, + 0.1352, + 0.1993, + 0.1993, + 0.2793, + 0.2793, + 0.3936, + 0.3936, + 0.5101, + 0.5101, + 0.6309, + 0.6309, + 0.2981, + 0.2981, + 0.0394, + 0.0394, + 0.0075, + 0.0075, + 0.006, + 0.006, + 0.0078, + 0.0078, + 0.0099, + 0.0099, + 0.0111, + 0.0111, + 0.0126, + 0.0126, + 0.0139, + 0.0139, + 0.0152, + 0.0152, + 0.0168, + 0.0168, + 0.022, + 0.022, + 0.0286, + 0.0286, + 0.0426, + 0.0426, + 0.0592, + 0.0592, + 0.0891, + 0.0891, + 0.1326, + 0.1326, + 0.196, + 0.196, + 0.2754, + 0.2754, + 0.3891, + 0.3891, + 0.5056, + 0.5056, + 0.6271, + 0.6271, + 0.2849, + 0.2849, + 0.0366, + 0.0366, + 0.0073, + 0.0073, + 0.0058, + 0.0058, + 0.0076, + 0.0076, + 0.0096, + 0.0096, + 0.0107, + 0.0107, + 0.0122, + 0.0122, + 0.0135, + 0.0135, + 0.0147, + 0.0147, + 0.0163, + 0.0163, + 0.0214, + 0.0214, + 0.0279, + 0.0279, + 0.0415, + 0.0415, + 0.0578, + 0.0578, + 0.0872, + 0.0872, + 0.1301, + 0.1301, + 0.1926, + 0.1926, + 0.2713, + 0.2713, + 0.3842, + 0.3842, + 0.5001, + 0.5001, + 0.6217, + 0.6217, + 0.2722, + 0.2722, + 0.034, + 0.034, + 0.007, + 0.007, + 0.0056, + 0.0056, + 0.0074, + 0.0074, + 0.0093, + 0.0093, + 0.0104, + 0.0104, + 0.0118, + 0.0118, + 0.0131, + 0.0131, + 0.0143, + 0.0143, + 0.0159, + 0.0159, + 0.0208, + 0.0208, + 0.0272, + 0.0272, + 0.0405, + 0.0405, + 0.0566, + 0.0566, + 0.0855, + 0.0855, + 0.1279, + 0.1279, + 0.1898, + 0.1898, + 0.2679, + 0.2679, + 0.3802, + 0.3802, + 0.496, + 0.496, + 0.6182, + 0.6182, + 0.2609, + 0.2609, + 0.0319, + 0.0319, + 0.0069, + 0.0069, + 0.0054, + 0.0054, + 0.0072, + 0.0072, + 0.009, + 0.009, + 0.0102, + 0.0102, + 0.0115, + 0.0115, + 0.0127, + 0.0127, + 0.014, + 0.014, + 0.0155, + 0.0155, + 0.0204, + 0.0204, + 0.0267, + 0.0267, + 0.0398, + 0.0398, + 0.0557, + 0.0557, + 0.0842, + 0.0842, + 0.1262, + 0.1262, + 0.1875, + 0.1875, + 0.2652, + 0.2652, + 0.377, + 0.377, + 0.4926, + 0.4926, + 0.6151, + 0.6151, + 0.2499, + 0.2499, + 0.0297, + 0.0297, + 0.0066, + 0.0066, + 0.0052, + 0.0052, + 0.0069, + 0.0069, + 0.0087, + 0.0087, + 0.0098, + 0.0098, + 0.0111, + 0.0111, + 0.0123, + 0.0123, + 0.0135, + 0.0135, + 0.0151, + 0.0151, + 0.0198, + 0.0198, + 0.026, + 0.026, + 0.0387, + 0.0387, + 0.0544, + 0.0544, + 0.0824, + 0.0824, + 0.1237, + 0.1237, + 0.1843, + 0.1843, + 0.2613, + 0.2613, + 0.3726, + 0.3726, + 0.4879, + 0.4879, + 0.6111, + 0.6111, + 0.2398, + 0.2398, + 0.0279, + 0.0279, + 0.0064, + 0.0064, + 0.0051, + 0.0051, + 0.0068, + 0.0068, + 0.0085, + 0.0085, + 0.0096, + 0.0096, + 0.0109, + 0.0109, + 0.012, + 0.012, + 0.0132, + 0.0132, + 0.0148, + 0.0148, + 0.0195, + 0.0195, + 0.0256, + 0.0256, + 0.0382, + 0.0382, + 0.0538, + 0.0538, + 0.0816, + 0.0816, + 0.1228, + 0.1228, + 0.1833, + 0.1833, + 0.2604, + 0.2604, + 0.3721, + 0.3721, + 0.4883, + 0.4883, + 0.6126, + 0.6126, + 0.2301, + 0.2301, + 0.0263, + 0.0263, + 0.0063, + 0.0063, + 0.0049, + 0.0049, + 0.0066, + 0.0066, + 0.0083, + 0.0083, + 0.0093, + 0.0093, + 0.0106, + 0.0106, + 0.0118, + 0.0118, + 0.0129, + 0.0129, + 0.0145, + 0.0145, + 0.0192, + 0.0192, + 0.0252, + 0.0252, + 0.0376, + 0.0376, + 0.053, + 0.053, + 0.0807, + 0.0807, + 0.1217, + 0.1217, + 0.1821, + 0.1821, + 0.2593, + 0.2593, + 0.3715, + 0.3715, + 0.4886, + 0.4886, + 0.6142, + 0.6142, + 0.2212, + 0.2212, + 0.0248, + 0.0248, + 0.0061, + 0.0061, + 0.0048, + 0.0048, + 0.0064, + 0.0064, + 0.0081, + 0.0081, + 0.0091, + 0.0091, + 0.0103, + 0.0103, + 0.0114, + 0.0114, + 0.0126, + 0.0126, + 0.0142, + 0.0142, + 0.0187, + 0.0187, + 0.0247, + 0.0247, + 0.0368, + 0.0368, + 0.0522, + 0.0522, + 0.0795, + 0.0795, + 0.1202, + 0.1202, + 0.1803, + 0.1803, + 0.2575, + 0.2575, + 0.3698, + 0.3698, + 0.4876, + 0.4876, + 0.6145, + 0.6145, + 0.2131, + 0.2131, + 0.0234, + 0.0234, + 0.0059, + 0.0059, + 0.0046, + 0.0046, + 0.0062, + 0.0062, + 0.0078, + 0.0078, + 0.0088, + 0.0088, + 0.01, + 0.01, + 0.0111, + 0.0111, + 0.0122, + 0.0122, + 0.0138, + 0.0138, + 0.0183, + 0.0183, + 0.0241, + 0.0241, + 0.036, + 0.036, + 0.0512, + 0.0512, + 0.0782, + 0.0782, + 0.1185, + 0.1185, + 0.1782, + 0.1782, + 0.2551, + 0.2551, + 0.3673, + 0.3673, + 0.4854, + 0.4854, + 0.613, + 0.613, + 0.2054, + 0.2054, + 0.0221, + 0.0221, + 0.0057, + 0.0057, + 0.0045, + 0.0045, + 0.006, + 0.006, + 0.0076, + 0.0076, + 0.0085, + 0.0085, + 0.0097, + 0.0097, + 0.0107, + 0.0107, + 0.0119, + 0.0119, + 0.0135, + 0.0135, + 0.0178, + 0.0178, + 0.0236, + 0.0236, + 0.0353, + 0.0353, + 0.0502, + 0.0502, + 0.0769, + 0.0769, + 0.1168, + 0.1168, + 0.176, + 0.176, + 0.2526, + 0.2526, + 0.3645, + 0.3645, + 0.4825, + 0.4825, + 0.6108, + 0.6108, + 0.1981, + 0.1981, + 0.0209, + 0.0209, + 0.0055, + 0.0055, + 0.0043, + 0.0043, + 0.0058, + 0.0058, + 0.0074, + 0.0074, + 0.0083, + 0.0083, + 0.0094, + 0.0094, + 0.0104, + 0.0104, + 0.0116, + 0.0116, + 0.0132, + 0.0132, + 0.0175, + 0.0175, + 0.0232, + 0.0232, + 0.0346, + 0.0346, + 0.0494, + 0.0494, + 0.0758, + 0.0758, + 0.1153, + 0.1153, + 0.1742, + 0.1742, + 0.2506, + 0.2506, + 0.3624, + 0.3624, + 0.4805, + 0.4805, + 0.6095, + 0.6095, + 0.1913, + 0.1913, + 0.0197, + 0.0197, + 0.0053, + 0.0053, + 0.0042, + 0.0042, + 0.0056, + 0.0056, + 0.0071, + 0.0071, + 0.008, + 0.008, + 0.0091, + 0.0091, + 0.0102, + 0.0102, + 0.0113, + 0.0113, + 0.0128, + 0.0128, + 0.017, + 0.017, + 0.0226, + 0.0226, + 0.0338, + 0.0338, + 0.0485, + 0.0485, + 0.0744, + 0.0744, + 0.1135, + 0.1135, + 0.1718, + 0.1718, + 0.2474, + 0.2474, + 0.3585, + 0.3585, + 0.4758, + 0.4758, + 0.6051, + 0.6051, + 0.185, + 0.185, + 0.0186, + 0.0186, + 0.0049, + 0.0049, + 0.0038, + 0.0038, + 0.0052, + 0.0052, + 0.0066, + 0.0066, + 0.0074, + 0.0074, + 0.0084, + 0.0084, + 0.0094, + 0.0094, + 0.0105, + 0.0105, + 0.0121, + 0.0121, + 0.0161, + 0.0161, + 0.0214, + 0.0214, + 0.0321, + 0.0321, + 0.0463, + 0.0463, + 0.0714, + 0.0714, + 0.1095, + 0.1095, + 0.1666, + 0.1666, + 0.2413, + 0.2413, + 0.3513, + 0.3513, + 0.4683, + 0.4683, + 0.5979, + 0.5979, + 0.1791, + 0.1791, + 0.018, + 0.018, + 0.0045, + 0.0045, + 0.0036, + 0.0036, + 0.0048, + 0.0048, + 0.0062, + 0.0062, + 0.007, + 0.007, + 0.0079, + 0.0079, + 0.0088, + 0.0088, + 0.0099, + 0.0099, + 0.0115, + 0.0115, + 0.0154, + 0.0154, + 0.0206, + 0.0206, + 0.031, + 0.031, + 0.045, + 0.045, + 0.0698, + 0.0698, + 0.1077, + 0.1077, + 0.1648, + 0.1648, + 0.2401, + 0.2401, + 0.3516, + 0.3516, + 0.471, + 0.471, + 0.6037, + 0.6037, + 0.1746, + 0.1746, + 0.0175, + 0.0175, + 0.0042, + 0.0042, + 0.0033, + 0.0033, + 0.0044, + 0.0044, + 0.0057, + 0.0057, + 0.0064, + 0.0064, + 0.0073, + 0.0073, + 0.0082, + 0.0082, + 0.0092, + 0.0092, + 0.0108, + 0.0108, + 0.0145, + 0.0145, + 0.0196, + 0.0196, + 0.0294, + 0.0294, + 0.0431, + 0.0431, + 0.0672, + 0.0672, + 0.1044, + 0.1044, + 0.1608, + 0.1608, + 0.2356, + 0.2356, + 0.347, + 0.347, + 0.4673, + 0.4673, + 0.602, + 0.602, + 0.1692, + 0.1692, + 0.0165, + 0.0165, + 0.0035, + 0.0035, + 0.0028, + 0.0028, + 0.004, + 0.004, + 0.0051, + 0.0051, + 0.0058, + 0.0058, + 0.0066, + 0.0066, + 0.0074, + 0.0074, + 0.0084, + 0.0084, + 0.01, + 0.01, + 0.0135, + 0.0135, + 0.0184, + 0.0184, + 0.0278, + 0.0278, + 0.0412, + 0.0412, + 0.0648, + 0.0648, + 0.1012, + 0.1012, + 0.1572, + 0.1572, + 0.2318, + 0.2318, + 0.3434, + 0.3434, + 0.4643, + 0.4643, + 0.6005, + 0.6005, + 0.1652, + 0.1652, + 0.0159, + 0.0159, + 0.0031, + 0.0031, + 0.0025, + 0.0025, + 0.0035, + 0.0035, + 0.0046, + 0.0046, + 0.0052, + 0.0052, + 0.006, + 0.006, + 0.0068, + 0.0068, + 0.0078, + 0.0078, + 0.0094, + 0.0094, + 0.0128, + 0.0128, + 0.0175, + 0.0175, + 0.0265, + 0.0265, + 0.0397, + 0.0397, + 0.0629, + 0.0629, + 0.099, + 0.099, + 0.1547, + 0.1547, + 0.2296, + 0.2296, + 0.3421, + 0.3421, + 0.4647, + 0.4647, + 0.6031, + 0.6031, + 0.1618, + 0.1618, + 0.0154, + 0.0154, + 0.0028, + 0.0028, + 0.0022, + 0.0022, + 0.0032, + 0.0032, + 0.0041, + 0.0041, + 0.0047, + 0.0047, + 0.0054, + 0.0054, + 0.0062, + 0.0062, + 0.0072, + 0.0072, + 0.0088, + 0.0088, + 0.012, + 0.012, + 0.0166, + 0.0166, + 0.0253, + 0.0253, + 0.0382, + 0.0382, + 0.0608, + 0.0608, + 0.0963, + 0.0963, + 0.1515, + 0.1515, + 0.226, + 0.226, + 0.3386, + 0.3386, + 0.4617, + 0.4617, + 0.6012, + 0.6012, + 0.1588, + 0.1588, + 0.015, + 0.015, + 0.0024, + 0.0024, + 0.002, + 0.002, + 0.0028, + 0.0028, + 0.0037, + 0.0037, + 0.0043, + 0.0043, + 0.0049, + 0.0049, + 0.0056, + 0.0056, + 0.0067, + 0.0067, + 0.0083, + 0.0083, + 0.0114, + 0.0114, + 0.0159, + 0.0159, + 0.0242, + 0.0242, + 0.0369, + 0.0369, + 0.059, + 0.059, + 0.0942, + 0.0942, + 0.1491, + 0.1491, + 0.2238, + 0.2238, + 0.3369, + 0.3369, + 0.4613, + 0.4613, + 0.6024, + 0.6024, + 0.1561, + 0.1561, + 0.0146, + 0.0146, + 0.002, + 0.002, + 0.0017, + 0.0017, + 0.0024, + 0.0024, + 0.0032, + 0.0032, + 0.0037, + 0.0037, + 0.0042, + 0.0042, + 0.005, + 0.005, + 0.0059, + 0.0059, + 0.0075, + 0.0075, + 0.0105, + 0.0105, + 0.0148, + 0.0148, + 0.0227, + 0.0227, + 0.035, + 0.035, + 0.0566, + 0.0566, + 0.0911, + 0.0911, + 0.1457, + 0.1457, + 0.2204, + 0.2204, + 0.3344, + 0.3344, + 0.4605, + 0.4605, + 0.604, + 0.604, + 0.16, + 0.16, + 0.0173, + 0.0173, + 0.0032, + 0.0032, + 0.0022, + 0.0022, + 0.0028, + 0.0028, + 0.0036, + 0.0036, + 0.0042, + 0.0042, + 0.0048, + 0.0048, + 0.0056, + 0.0056, + 0.0069, + 0.0069, + 0.0089, + 0.0089, + 0.0121, + 0.0121, + 0.0168, + 0.0168, + 0.0257, + 0.0257, + 0.0397, + 0.0397, + 0.0634, + 0.0634, + 0.1002, + 0.1002, + 0.1548, + 0.1548, + 0.2294, + 0.2294, + 0.3433, + 0.3433, + 0.4697, + 0.4697, + 0.6133, + 0.6133, + 0.1511, + 0.1511, + 0.0139, + 0.0139, + 0.002, + 0.002, + 0.0017, + 0.0017, + 0.0024, + 0.0024, + 0.0031, + 0.0031, + 0.0036, + 0.0036, + 0.0041, + 0.0041, + 0.0048, + 0.0048, + 0.0058, + 0.0058, + 0.0074, + 0.0074, + 0.0104, + 0.0104, + 0.0146, + 0.0146, + 0.0224, + 0.0224, + 0.0347, + 0.0347, + 0.0562, + 0.0562, + 0.0906, + 0.0906, + 0.1451, + 0.1451, + 0.2199, + 0.2199, + 0.334, + 0.334, + 0.4603, + 0.4603, + 0.6042, + 0.6042, + 0.1489, + 0.1489, + 0.0136, + 0.0136, + 0.0019, + 0.0019, + 0.0016, + 0.0016, + 0.0023, + 0.0023, + 0.003, + 0.003, + 0.0035, + 0.0035, + 0.004, + 0.004, + 0.0047, + 0.0047, + 0.0057, + 0.0057, + 0.0073, + 0.0073, + 0.0102, + 0.0102, + 0.0144, + 0.0144, + 0.0221, + 0.0221, + 0.0343, + 0.0343, + 0.0557, + 0.0557, + 0.0899, + 0.0899, + 0.1442, + 0.1442, + 0.2188, + 0.2188, + 0.3329, + 0.3329, + 0.4594, + 0.4594, + 0.6035, + 0.6035, + 0.1466, + 0.1466, + 0.0133, + 0.0133, + 0.002, + 0.002, + 0.0017, + 0.0017, + 0.0023, + 0.0023, + 0.0031, + 0.0031, + 0.0035, + 0.0035, + 0.0041, + 0.0041, + 0.0048, + 0.0048, + 0.0058, + 0.0058, + 0.0074, + 0.0074, + 0.0103, + 0.0103, + 0.0145, + 0.0145, + 0.0222, + 0.0222, + 0.0345, + 0.0345, + 0.0559, + 0.0559, + 0.0901, + 0.0901, + 0.1444, + 0.1444, + 0.2191, + 0.2191, + 0.3332, + 0.3332, + 0.4596, + 0.4596, + 0.6039, + 0.6039, + 0.1443, + 0.1443, + 0.0129, + 0.0129, + 0.0018, + 0.0018, + 0.0015, + 0.0015, + 0.0022, + 0.0022, + 0.0029, + 0.0029, + 0.0033, + 0.0033, + 0.0039, + 0.0039, + 0.0046, + 0.0046, + 0.0055, + 0.0055, + 0.0071, + 0.0071, + 0.01, + 0.01, + 0.0142, + 0.0142, + 0.0218, + 0.0218, + 0.0339, + 0.0339, + 0.0551, + 0.0551, + 0.0891, + 0.0891, + 0.1433, + 0.1433, + 0.2179, + 0.2179, + 0.332, + 0.332, + 0.4587, + 0.4587, + 0.6032, + 0.6032, + 0.1424, + 0.1424, + 0.0126, + 0.0126, + 0.0018, + 0.0018, + 0.0015, + 0.0015, + 0.0021, + 0.0021, + 0.0028, + 0.0028, + 0.0032, + 0.0032, + 0.0038, + 0.0038, + 0.0044, + 0.0044, + 0.0054, + 0.0054, + 0.007, + 0.007, + 0.0098, + 0.0098, + 0.014, + 0.014, + 0.0215, + 0.0215, + 0.0336, + 0.0336, + 0.0547, + 0.0547, + 0.0886, + 0.0886, + 0.1427, + 0.1427, + 0.2173, + 0.2173, + 0.3315, + 0.3315, + 0.4584, + 0.4584, + 0.6034, + 0.6034, + 0.1407, + 0.1407, + 0.0124, + 0.0124, + 0.0017, + 0.0017, + 0.0014, + 0.0014, + 0.002, + 0.002, + 0.0027, + 0.0027, + 0.0032, + 0.0032, + 0.0037, + 0.0037, + 0.0043, + 0.0043, + 0.0053, + 0.0053, + 0.0069, + 0.0069, + 0.0097, + 0.0097, + 0.0138, + 0.0138, + 0.0212, + 0.0212, + 0.0332, + 0.0332, + 0.0542, + 0.0542, + 0.088, + 0.088, + 0.1421, + 0.1421, + 0.2166, + 0.2166, + 0.331, + 0.331, + 0.4582, + 0.4582, + 0.6036, + 0.6036, + 0.1387, + 0.1387, + 0.0122, + 0.0122, + 0.0016, + 0.0016, + 0.0013, + 0.0013, + 0.0019, + 0.0019, + 0.0026, + 0.0026, + 0.003, + 0.003, + 0.0034, + 0.0034, + 0.0041, + 0.0041, + 0.0051, + 0.0051, + 0.0066, + 0.0066, + 0.0094, + 0.0094, + 0.0134, + 0.0134, + 0.0208, + 0.0208, + 0.0327, + 0.0327, + 0.0535, + 0.0535, + 0.0871, + 0.0871, + 0.1412, + 0.1412, + 0.2159, + 0.2159, + 0.3309, + 0.3309, + 0.459, + 0.459, + 0.6055, + 0.6055, + 0.1368, + 0.1368, + 0.0119, + 0.0119, + 0.0014, + 0.0014, + 0.0012, + 0.0012, + 0.0017, + 0.0017, + 0.0023, + 0.0023, + 0.0027, + 0.0027, + 0.0032, + 0.0032, + 0.0038, + 0.0038, + 0.0048, + 0.0048, + 0.0063, + 0.0063, + 0.009, + 0.009, + 0.013, + 0.013, + 0.0201, + 0.0201, + 0.0318, + 0.0318, + 0.0524, + 0.0524, + 0.0858, + 0.0858, + 0.1398, + 0.1398, + 0.2149, + 0.2149, + 0.3307, + 0.3307, + 0.4603, + 0.4603, + 0.6085, + 0.6085, + 0.1349, + 0.1349, + 0.0117, + 0.0117, + 0.0013, + 0.0013, + 0.0011, + 0.0011, + 0.0016, + 0.0016, + 0.0022, + 0.0022, + 0.0025, + 0.0025, + 0.003, + 0.003, + 0.0036, + 0.0036, + 0.0045, + 0.0045, + 0.0061, + 0.0061, + 0.0087, + 0.0087, + 0.0126, + 0.0126, + 0.0196, + 0.0196, + 0.0312, + 0.0312, + 0.0516, + 0.0516, + 0.0848, + 0.0848, + 0.1387, + 0.1387, + 0.2137, + 0.2137, + 0.3302, + 0.3302, + 0.4605, + 0.4605, + 0.6095, + 0.6095, + 0.1329, + 0.1329, + 0.0114, + 0.0114, + 0.0011, + 0.0011, + 0.001, + 0.001, + 0.0014, + 0.0014, + 0.002, + 0.002, + 0.0023, + 0.0023, + 0.0027, + 0.0027, + 0.0033, + 0.0033, + 0.0042, + 0.0042, + 0.0058, + 0.0058, + 0.0083, + 0.0083, + 0.0121, + 0.0121, + 0.0189, + 0.0189, + 0.0304, + 0.0304, + 0.0505, + 0.0505, + 0.0834, + 0.0834, + 0.1373, + 0.1373, + 0.2123, + 0.2123, + 0.3297, + 0.3297, + 0.4608, + 0.4608, + 0.611, + 0.611, + 0.1309, + 0.1309, + 0.0112, + 0.0112, + 0.001, + 0.001, + 0.0009, + 0.0009, + 0.0013, + 0.0013, + 0.0018, + 0.0018, + 0.0022, + 0.0022, + 0.0025, + 0.0025, + 0.0031, + 0.0031, + 0.004, + 0.004, + 0.0056, + 0.0056, + 0.0081, + 0.0081, + 0.0118, + 0.0118, + 0.0185, + 0.0185, + 0.0299, + 0.0299, + 0.0498, + 0.0498, + 0.0825, + 0.0825, + 0.1363, + 0.1363, + 0.2113, + 0.2113, + 0.3293, + 0.3293, + 0.461, + 0.461, + 0.6118, + 0.6118, + 0.1289, + 0.1289, + 0.0109, + 0.0109, + 0.0009, + 0.0009, + 0.0008, + 0.0008, + 0.0012, + 0.0012, + 0.0016, + 0.0016, + 0.0019, + 0.0019, + 0.0023, + 0.0023, + 0.0029, + 0.0029, + 0.0038, + 0.0038, + 0.0053, + 0.0053, + 0.0077, + 0.0077, + 0.0113, + 0.0113, + 0.0178, + 0.0178, + 0.029, + 0.029, + 0.0486, + 0.0486, + 0.081, + 0.081, + 0.1345, + 0.1345, + 0.2095, + 0.2095, + 0.3281, + 0.3281, + 0.4607, + 0.4607, + 0.6125, + 0.6125, + 0.1267, + 0.1267, + 0.0106, + 0.0106, + 0.0008, + 0.0008, + 0.0008, + 0.0008, + 0.0011, + 0.0011, + 0.0015, + 0.0015, + 0.0018, + 0.0018, + 0.0022, + 0.0022, + 0.0027, + 0.0027, + 0.0036, + 0.0036, + 0.0051, + 0.0051, + 0.0074, + 0.0074, + 0.0111, + 0.0111, + 0.0174, + 0.0174, + 0.0284, + 0.0284, + 0.0479, + 0.0479, + 0.08, + 0.08, + 0.1335, + 0.1335, + 0.2084, + 0.2084, + 0.3273, + 0.3273, + 0.4604, + 0.4604, + 0.613, + 0.613, + 0.1243, + 0.1243, + 0.0103, + 0.0103, + 0.001, + 0.001, + 0.0009, + 0.0009, + 0.0013, + 0.0013, + 0.0018, + 0.0018, + 0.0022, + 0.0022, + 0.0025, + 0.0025, + 0.0031, + 0.0031, + 0.004, + 0.004, + 0.0056, + 0.0056, + 0.008, + 0.008, + 0.0118, + 0.0118, + 0.0184, + 0.0184, + 0.0298, + 0.0298, + 0.0497, + 0.0497, + 0.0824, + 0.0824, + 0.1362, + 0.1362, + 0.2111, + 0.2111, + 0.3291, + 0.3291, + 0.4607, + 0.4607, + 0.6116, + 0.6116, + 0.122, + 0.122, + 0.01, + 0.01, + 0.0011, + 0.0011, + 0.001, + 0.001, + 0.0014, + 0.0014, + 0.002, + 0.002, + 0.0023, + 0.0023, + 0.0027, + 0.0027, + 0.0033, + 0.0033, + 0.0042, + 0.0042, + 0.0058, + 0.0058, + 0.0083, + 0.0083, + 0.0121, + 0.0121, + 0.0189, + 0.0189, + 0.0304, + 0.0304, + 0.0505, + 0.0505, + 0.0834, + 0.0834, + 0.1373, + 0.1373, + 0.2123, + 0.2123, + 0.3298, + 0.3298, + 0.4609, + 0.4609, + 0.6111, + 0.6111, + 0.1197, + 0.1197, + 0.0097, + 0.0097, + 0.0013, + 0.0013, + 0.0011, + 0.0011, + 0.0017, + 0.0017, + 0.0022, + 0.0022, + 0.0026, + 0.0026, + 0.0031, + 0.0031, + 0.0037, + 0.0037, + 0.0046, + 0.0046, + 0.0062, + 0.0062, + 0.0088, + 0.0088, + 0.0127, + 0.0127, + 0.0198, + 0.0198, + 0.0315, + 0.0315, + 0.0519, + 0.0519, + 0.0852, + 0.0852, + 0.1392, + 0.1392, + 0.2142, + 0.2142, + 0.3303, + 0.3303, + 0.4602, + 0.4602, + 0.6089, + 0.6089, + 0.1176, + 0.1176, + 0.0094, + 0.0094, + 0.0012, + 0.0012, + 0.001, + 0.001, + 0.0015, + 0.0015, + 0.0021, + 0.0021, + 0.0024, + 0.0024, + 0.0028, + 0.0028, + 0.0034, + 0.0034, + 0.0044, + 0.0044, + 0.0059, + 0.0059, + 0.0085, + 0.0085, + 0.0124, + 0.0124, + 0.0192, + 0.0192, + 0.0308, + 0.0308, + 0.0511, + 0.0511, + 0.0842, + 0.0842, + 0.138, + 0.138, + 0.2131, + 0.2131, + 0.3301, + 0.3301, + 0.4608, + 0.4608, + 0.6103, + 0.6103, + 0.1154, + 0.1154, + 0.0092, + 0.0092, + 0.0012, + 0.0012, + 0.001, + 0.001, + 0.0015, + 0.0015, + 0.002, + 0.002, + 0.0023, + 0.0023, + 0.0028, + 0.0028, + 0.0034, + 0.0034, + 0.0043, + 0.0043, + 0.0058, + 0.0058, + 0.0084, + 0.0084, + 0.0122, + 0.0122, + 0.019, + 0.019, + 0.0306, + 0.0306, + 0.0507, + 0.0507, + 0.0837, + 0.0837, + 0.1375, + 0.1375, + 0.2125, + 0.2125, + 0.3298, + 0.3298, + 0.4606, + 0.4606, + 0.6105, + 0.6105, + 0.1133, + 0.1133, + 0.0089, + 0.0089, + 0.001, + 0.001, + 0.0009, + 0.0009, + 0.0013, + 0.0013, + 0.0018, + 0.0018, + 0.0021, + 0.0021, + 0.0025, + 0.0025, + 0.0031, + 0.0031, + 0.004, + 0.004, + 0.0056, + 0.0056, + 0.008, + 0.008, + 0.0118, + 0.0118, + 0.0184, + 0.0184, + 0.0298, + 0.0298, + 0.0496, + 0.0496, + 0.0823, + 0.0823, + 0.1361, + 0.1361, + 0.211, + 0.211, + 0.3291, + 0.3291, + 0.4609, + 0.4609, + 0.6118, + 0.6118, + 0.1111, + 0.1111, + 0.0086, + 0.0086, + 0.0011, + 0.0011, + 0.001, + 0.001, + 0.0014, + 0.0014, + 0.0019, + 0.0019, + 0.0022, + 0.0022, + 0.0026, + 0.0026, + 0.0032, + 0.0032, + 0.0042, + 0.0042, + 0.0057, + 0.0057, + 0.0082, + 0.0082, + 0.012, + 0.012, + 0.0188, + 0.0188, + 0.0302, + 0.0302, + 0.0502, + 0.0502, + 0.0831, + 0.0831, + 0.1369, + 0.1369, + 0.212, + 0.212, + 0.3297, + 0.3297, + 0.4611, + 0.4611, + 0.6116, + 0.6116, + 0.1089, + 0.1089, + 0.0084, + 0.0084, + 0.0013, + 0.0013, + 0.0011, + 0.0011, + 0.0016, + 0.0016, + 0.0022, + 0.0022, + 0.0026, + 0.0026, + 0.003, + 0.003, + 0.0036, + 0.0036, + 0.0046, + 0.0046, + 0.0062, + 0.0062, + 0.0088, + 0.0088, + 0.0127, + 0.0127, + 0.0197, + 0.0197, + 0.0314, + 0.0314, + 0.0519, + 0.0519, + 0.0852, + 0.0852, + 0.1391, + 0.1391, + 0.2142, + 0.2142, + 0.3304, + 0.3304, + 0.4604, + 0.4604, + 0.6092, + 0.6092, + 0.1063, + 0.1063, + 0.0081, + 0.0081, + 0.0015, + 0.0015, + 0.0012, + 0.0012, + 0.0018, + 0.0018, + 0.0025, + 0.0025, + 0.0029, + 0.0029, + 0.0033, + 0.0033, + 0.004, + 0.004, + 0.0049, + 0.0049, + 0.0065, + 0.0065, + 0.0092, + 0.0092, + 0.0132, + 0.0132, + 0.0205, + 0.0205, + 0.0323, + 0.0323, + 0.0531, + 0.0531, + 0.0867, + 0.0867, + 0.1407, + 0.1407, + 0.2156, + 0.2156, + 0.3311, + 0.3311, + 0.4599, + 0.4599, + 0.6073, + 0.6073, + 0.1039, + 0.1039, + 0.0078, + 0.0078, + 0.0015, + 0.0015, + 0.0012, + 0.0012, + 0.0018, + 0.0018, + 0.0024, + 0.0024, + 0.0028, + 0.0028, + 0.0033, + 0.0033, + 0.004, + 0.004, + 0.0049, + 0.0049, + 0.0065, + 0.0065, + 0.0092, + 0.0092, + 0.0132, + 0.0132, + 0.0204, + 0.0204, + 0.0322, + 0.0322, + 0.053, + 0.053, + 0.0865, + 0.0865, + 0.1405, + 0.1405, + 0.2154, + 0.2154, + 0.3307, + 0.3307, + 0.4595, + 0.4595, + 0.6068, + 0.6068, + 0.1013, + 0.1013, + 0.0075, + 0.0075, + 0.0016, + 0.0016, + 0.0014, + 0.0014, + 0.002, + 0.002, + 0.0026, + 0.0026, + 0.0031, + 0.0031, + 0.0036, + 0.0036, + 0.0042, + 0.0042, + 0.0052, + 0.0052, + 0.0068, + 0.0068, + 0.0095, + 0.0095, + 0.0136, + 0.0136, + 0.021, + 0.021, + 0.033, + 0.033, + 0.0539, + 0.0539, + 0.0876, + 0.0876, + 0.1417, + 0.1417, + 0.2164, + 0.2164, + 0.3311, + 0.3311, + 0.4588, + 0.4588, + 0.6048, + 0.6048, + 0.0985, + 0.0985, + 0.0071, + 0.0071, + 0.0015, + 0.0015, + 0.0012, + 0.0012, + 0.0018, + 0.0018, + 0.0025, + 0.0025, + 0.0029, + 0.0029, + 0.0033, + 0.0033, + 0.004, + 0.004, + 0.0049, + 0.0049, + 0.0065, + 0.0065, + 0.0092, + 0.0092, + 0.0132, + 0.0132, + 0.0205, + 0.0205, + 0.0323, + 0.0323, + 0.053, + 0.053, + 0.0866, + 0.0866, + 0.1406, + 0.1406, + 0.2155, + 0.2155, + 0.3308, + 0.3308, + 0.4596, + 0.4596, + 0.6068, + 0.6068, + 0.0956, + 0.0956, + 0.0068, + 0.0068, + 0.0015, + 0.0015, + 0.0012, + 0.0012, + 0.0018, + 0.0018, + 0.0024, + 0.0024, + 0.0028, + 0.0028, + 0.0032, + 0.0032, + 0.0039, + 0.0039, + 0.0048, + 0.0048, + 0.0064, + 0.0064, + 0.0091, + 0.0091, + 0.0131, + 0.0131, + 0.0203, + 0.0203, + 0.0321, + 0.0321, + 0.0527, + 0.0527, + 0.0862, + 0.0862, + 0.1402, + 0.1402, + 0.2151, + 0.2151, + 0.3306, + 0.3306, + 0.4597, + 0.4597, + 0.6073, + 0.6073, + 0.0929, + 0.0929, + 0.0065, + 0.0065, + 0.0013, + 0.0013, + 0.0011, + 0.0011, + 0.0017, + 0.0017, + 0.0022, + 0.0022, + 0.0026, + 0.0026, + 0.0031, + 0.0031, + 0.0037, + 0.0037, + 0.0046, + 0.0046, + 0.0062, + 0.0062, + 0.0088, + 0.0088, + 0.0127, + 0.0127, + 0.0198, + 0.0198, + 0.0315, + 0.0315, + 0.0519, + 0.0519, + 0.0852, + 0.0852, + 0.1392, + 0.1392, + 0.2142, + 0.2142, + 0.3304, + 0.3304, + 0.4604, + 0.4604, + 0.609, + 0.609, + 0.09, + 0.09, + 0.0062, + 0.0062, + 0.0012, + 0.0012, + 0.001, + 0.001, + 0.0015, + 0.0015, + 0.0021, + 0.0021, + 0.0024, + 0.0024, + 0.0029, + 0.0029, + 0.0035, + 0.0035, + 0.0044, + 0.0044, + 0.006, + 0.006, + 0.0085, + 0.0085, + 0.0124, + 0.0124, + 0.0193, + 0.0193, + 0.0309, + 0.0309, + 0.0511, + 0.0511, + 0.0842, + 0.0842, + 0.1381, + 0.1381, + 0.2132, + 0.2132, + 0.33, + 0.33, + 0.4606, + 0.4606, + 0.6101, + 0.6101, + 0.0874, + 0.0874, + 0.0059, + 0.0059, + 0.0012, + 0.0012, + 0.001, + 0.001, + 0.0015, + 0.0015, + 0.002, + 0.002, + 0.0024, + 0.0024, + 0.0028, + 0.0028, + 0.0034, + 0.0034, + 0.0043, + 0.0043, + 0.0059, + 0.0059, + 0.0084, + 0.0084, + 0.0123, + 0.0123, + 0.0191, + 0.0191, + 0.0307, + 0.0307, + 0.0509, + 0.0509, + 0.0839, + 0.0839, + 0.1378, + 0.1378, + 0.2128, + 0.2128, + 0.33, + 0.33, + 0.4608, + 0.4608, + 0.6106, + 0.6106, + 0.0851, + 0.0851, + 0.0057, + 0.0057, + 0.0011, + 0.0011, + 0.0009, + 0.0009, + 0.0014, + 0.0014, + 0.0019, + 0.0019, + 0.0023, + 0.0023, + 0.0027, + 0.0027, + 0.0033, + 0.0033, + 0.0042, + 0.0042, + 0.0058, + 0.0058, + 0.0083, + 0.0083, + 0.0121, + 0.0121, + 0.0188, + 0.0188, + 0.0303, + 0.0303, + 0.0504, + 0.0504, + 0.0833, + 0.0833, + 0.1371, + 0.1371, + 0.2121, + 0.2121, + 0.3296, + 0.3296, + 0.4609, + 0.4609, + 0.6111, + 0.6111, + 0.0829, + 0.0829, + 0.0055, + 0.0055, + 0.0012, + 0.0012, + 0.001, + 0.001, + 0.0015, + 0.0015, + 0.002, + 0.002, + 0.0023, + 0.0023, + 0.0027, + 0.0027, + 0.0033, + 0.0033, + 0.0042, + 0.0042, + 0.0058, + 0.0058, + 0.0083, + 0.0083, + 0.0122, + 0.0122, + 0.019, + 0.019, + 0.0305, + 0.0305, + 0.0506, + 0.0506, + 0.0836, + 0.0836, + 0.1374, + 0.1374, + 0.2124, + 0.2124, + 0.3298, + 0.3298, + 0.4609, + 0.4609, + 0.611, + 0.611, + 0.0811, + 0.0811, + 0.0053, + 0.0053, + 0.0011, + 0.0011, + 0.0009, + 0.0009, + 0.0014, + 0.0014, + 0.0019, + 0.0019, + 0.0022, + 0.0022, + 0.0026, + 0.0026, + 0.0032, + 0.0032, + 0.0042, + 0.0042, + 0.0057, + 0.0057, + 0.0082, + 0.0082, + 0.012, + 0.012, + 0.0188, + 0.0188, + 0.0302, + 0.0302, + 0.0503, + 0.0503, + 0.0832, + 0.0832, + 0.137, + 0.137, + 0.212, + 0.212, + 0.3296, + 0.3296, + 0.4609, + 0.4609, + 0.6112, + 0.6112, + 0.0793, + 0.0793, + 0.0051, + 0.0051, + 0.001, + 0.001, + 0.0009, + 0.0009, + 0.0013, + 0.0013, + 0.0018, + 0.0018, + 0.0021, + 0.0021, + 0.0025, + 0.0025, + 0.0031, + 0.0031, + 0.004, + 0.004, + 0.0056, + 0.0056, + 0.008, + 0.008, + 0.0118, + 0.0118, + 0.0184, + 0.0184, + 0.0298, + 0.0298, + 0.0497, + 0.0497, + 0.0824, + 0.0824, + 0.1361, + 0.1361, + 0.2111, + 0.2111, + 0.3292, + 0.3292, + 0.4608, + 0.4608, + 0.6117, + 0.6117, + 0.0786, + 0.0786, + 0.0054, + 0.0054, + 0.0014, + 0.0014, + 0.0012, + 0.0012, + 0.0016, + 0.0016, + 0.002, + 0.002, + 0.0023, + 0.0023, + 0.0027, + 0.0027, + 0.0032, + 0.0032, + 0.0042, + 0.0042, + 0.0057, + 0.0057, + 0.0082, + 0.0082, + 0.0119, + 0.0119, + 0.0185, + 0.0185, + 0.0298, + 0.0298, + 0.0497, + 0.0497, + 0.0819, + 0.0819, + 0.1351, + 0.1351, + 0.2097, + 0.2097, + 0.3276, + 0.3276, + 0.4598, + 0.4598, + 0.6104, + 0.6104, + 0.0762, + 0.0762, + 0.0048, + 0.0048, + 0.0008, + 0.0008, + 0.0007, + 0.0007, + 0.0011, + 0.0011, + 0.0015, + 0.0015, + 0.0018, + 0.0018, + 0.0021, + 0.0021, + 0.0026, + 0.0026, + 0.0035, + 0.0035, + 0.005, + 0.005, + 0.0074, + 0.0074, + 0.0109, + 0.0109, + 0.0172, + 0.0172, + 0.0282, + 0.0282, + 0.0476, + 0.0476, + 0.0796, + 0.0796, + 0.1329, + 0.1329, + 0.2078, + 0.2078, + 0.3265, + 0.3265, + 0.4598, + 0.4598, + 0.6119, + 0.6119, + 0.0747, + 0.0747, + 0.0046, + 0.0046, + 0.0008, + 0.0008, + 0.0006, + 0.0006, + 0.001, + 0.001, + 0.0014, + 0.0014, + 0.0016, + 0.0016, + 0.002, + 0.002, + 0.0025, + 0.0025, + 0.0034, + 0.0034, + 0.0049, + 0.0049, + 0.0071, + 0.0071, + 0.0106, + 0.0106, + 0.0168, + 0.0168, + 0.0277, + 0.0277, + 0.0468, + 0.0468, + 0.0786, + 0.0786, + 0.1318, + 0.1318, + 0.2066, + 0.2066, + 0.3256, + 0.3256, + 0.4595, + 0.4595, + 0.6121, + 0.6121, + 0.0732, + 0.0732, + 0.0045, + 0.0045, + 0.0007, + 0.0007, + 0.0006, + 0.0006, + 0.0009, + 0.0009, + 0.0013, + 0.0013, + 0.0016, + 0.0016, + 0.0019, + 0.0019, + 0.0024, + 0.0024, + 0.0032, + 0.0032, + 0.0047, + 0.0047, + 0.007, + 0.007, + 0.0104, + 0.0104, + 0.0165, + 0.0165, + 0.0273, + 0.0273, + 0.0462, + 0.0462, + 0.0779, + 0.0779, + 0.1309, + 0.1309, + 0.2058, + 0.2058, + 0.325, + 0.325, + 0.4594, + 0.4594, + 0.6128, + 0.6128, + 0.0718, + 0.0718, + 0.0044, + 0.0044, + 0.0007, + 0.0007, + 0.0006, + 0.0006, + 0.001, + 0.001, + 0.0013, + 0.0013, + 0.0016, + 0.0016, + 0.0019, + 0.0019, + 0.0024, + 0.0024, + 0.0033, + 0.0033, + 0.0048, + 0.0048, + 0.007, + 0.007, + 0.0105, + 0.0105, + 0.0166, + 0.0166, + 0.0274, + 0.0274, + 0.0465, + 0.0465, + 0.0782, + 0.0782, + 0.1312, + 0.1312, + 0.2061, + 0.2061, + 0.3253, + 0.3253, + 0.4596, + 0.4596, + 0.6128, + 0.6128, + 0.0703, + 0.0703, + 0.0043, + 0.0043, + 0.0007, + 0.0007, + 0.0006, + 0.0006, + 0.0009, + 0.0009, + 0.0013, + 0.0013, + 0.0015, + 0.0015, + 0.0018, + 0.0018, + 0.0023, + 0.0023, + 0.0032, + 0.0032, + 0.0046, + 0.0046, + 0.0069, + 0.0069, + 0.0103, + 0.0103, + 0.0163, + 0.0163, + 0.027, + 0.027, + 0.0459, + 0.0459, + 0.0774, + 0.0774, + 0.1303, + 0.1303, + 0.2051, + 0.2051, + 0.3244, + 0.3244, + 0.459, + 0.459, + 0.6128, + 0.6128, + 0.0686, + 0.0686, + 0.0041, + 0.0041, + 0.0007, + 0.0007, + 0.0006, + 0.0006, + 0.0009, + 0.0009, + 0.0012, + 0.0012, + 0.0015, + 0.0015, + 0.0018, + 0.0018, + 0.0023, + 0.0023, + 0.0032, + 0.0032, + 0.0046, + 0.0046, + 0.0068, + 0.0068, + 0.0103, + 0.0103, + 0.0163, + 0.0163, + 0.027, + 0.027, + 0.0458, + 0.0458, + 0.0774, + 0.0774, + 0.1303, + 0.1303, + 0.2051, + 0.2051, + 0.3244, + 0.3244, + 0.4589, + 0.4589, + 0.6126, + 0.6126, + 0.0667, + 0.0667, + 0.0039, + 0.0039, + 0.0007, + 0.0007, + 0.0006, + 0.0006, + 0.0009, + 0.0009, + 0.0013, + 0.0013, + 0.0015, + 0.0015, + 0.0018, + 0.0018, + 0.0023, + 0.0023, + 0.0032, + 0.0032, + 0.0046, + 0.0046, + 0.0069, + 0.0069, + 0.0103, + 0.0103, + 0.0163, + 0.0163, + 0.027, + 0.027, + 0.0459, + 0.0459, + 0.0775, + 0.0775, + 0.1304, + 0.1304, + 0.2052, + 0.2052, + 0.3244, + 0.3244, + 0.4588, + 0.4588, + 0.6123, + 0.6123, + 0.0649, + 0.0649, + 0.0038, + 0.0038, + 0.0006, + 0.0006, + 0.0006, + 0.0006, + 0.0008, + 0.0008, + 0.0012, + 0.0012, + 0.0014, + 0.0014, + 0.0017, + 0.0017, + 0.0022, + 0.0022, + 0.0031, + 0.0031, + 0.0045, + 0.0045, + 0.0067, + 0.0067, + 0.0101, + 0.0101, + 0.016, + 0.016, + 0.0266, + 0.0266, + 0.0453, + 0.0453, + 0.0765, + 0.0765, + 0.1294, + 0.1294, + 0.204, + 0.204, + 0.3068, + 0.3068, + 0.4582, + 0.4582, + 0.6127, + 0.6127, + 0.063, + 0.063, + 0.0036, + 0.0036, + 0.0006, + 0.0006, + 0.0006, + 0.0006, + 0.0009, + 0.0009, + 0.0012, + 0.0012, + 0.0014, + 0.0014, + 0.0018, + 0.0018, + 0.0023, + 0.0023, + 0.0031, + 0.0031, + 0.0045, + 0.0045, + 0.0067, + 0.0067, + 0.0101, + 0.0101, + 0.0161, + 0.0161, + 0.0267, + 0.0267, + 0.0454, + 0.0454, + 0.0768, + 0.0768, + 0.1295, + 0.1295, + 0.2042, + 0.2042, + 0.3235, + 0.3235, + 0.4583, + 0.4583, + 0.6124, + 0.6124, + 0.0612, + 0.0612, + 0.0034, + 0.0034, + 0.0006, + 0.0006, + 0.0005, + 0.0005, + 0.0008, + 0.0008, + 0.0011, + 0.0011, + 0.0014, + 0.0014, + 0.0017, + 0.0017, + 0.0022, + 0.0022, + 0.003, + 0.003, + 0.0044, + 0.0044, + 0.0065, + 0.0065, + 0.0099, + 0.0099, + 0.0157, + 0.0157, + 0.0262, + 0.0262, + 0.0447, + 0.0447, + 0.0757, + 0.0757, + 0.1284, + 0.1284, + 0.2029, + 0.2029, + 0.3058, + 0.3058, + 0.4575, + 0.4575, + 0.6127, + 0.6127, + 0.0594, + 0.0594, + 0.0033, + 0.0033, + 0.0006, + 0.0006, + 0.0005, + 0.0005, + 0.0008, + 0.0008, + 0.0011, + 0.0011, + 0.0014, + 0.0014, + 0.0017, + 0.0017, + 0.0022, + 0.0022, + 0.003, + 0.003, + 0.0044, + 0.0044, + 0.0065, + 0.0065, + 0.0099, + 0.0099, + 0.0157, + 0.0157, + 0.0262, + 0.0262, + 0.0447, + 0.0447, + 0.0758, + 0.0758, + 0.1284, + 0.1284, + 0.203, + 0.203, + 0.3058, + 0.3058, + 0.4576, + 0.4576, + 0.6128, + 0.6128, + 0.0576, + 0.0576, + 0.0031, + 0.0031, + 0.0006, + 0.0006, + 0.0005, + 0.0005, + 0.0008, + 0.0008, + 0.001, + 0.001, + 0.0013, + 0.0013, + 0.0016, + 0.0016, + 0.002, + 0.002, + 0.0028, + 0.0028, + 0.0042, + 0.0042, + 0.0063, + 0.0063, + 0.0096, + 0.0096, + 0.0152, + 0.0152, + 0.0256, + 0.0256, + 0.0438, + 0.0438, + 0.0745, + 0.0745, + 0.1269, + 0.1269, + 0.2012, + 0.2012, + 0.304, + 0.304, + 0.4561, + 0.4561, + 0.612, + 0.612, + 0.0559, + 0.0559, + 0.003, + 0.003, + 0.0006, + 0.0006, + 0.0005, + 0.0005, + 0.0008, + 0.0008, + 0.001, + 0.001, + 0.0013, + 0.0013, + 0.0016, + 0.0016, + 0.002, + 0.002, + 0.0028, + 0.0028, + 0.0042, + 0.0042, + 0.0063, + 0.0063, + 0.0096, + 0.0096, + 0.0152, + 0.0152, + 0.0256, + 0.0256, + 0.0438, + 0.0438, + 0.0746, + 0.0746, + 0.1269, + 0.1269, + 0.2013, + 0.2013, + 0.3041, + 0.3041, + 0.4562, + 0.4562, + 0.6122, + 0.6122, + 0.0542, + 0.0542, + 0.0029, + 0.0029, + 0.0006, + 0.0006, + 0.0005, + 0.0005, + 0.0008, + 0.0008, + 0.0011, + 0.0011, + 0.0013, + 0.0013, + 0.0016, + 0.0016, + 0.002, + 0.002, + 0.0028, + 0.0028, + 0.0042, + 0.0042, + 0.0063, + 0.0063, + 0.0096, + 0.0096, + 0.0153, + 0.0153, + 0.0256, + 0.0256, + 0.0439, + 0.0439, + 0.0746, + 0.0746, + 0.127, + 0.127, + 0.2013, + 0.2013, + 0.3042, + 0.3042, + 0.4562, + 0.4562, + 0.612, + 0.612, + 0.0524, + 0.0524, + 0.0027, + 0.0027, + 0.0005, + 0.0005, + 0.0004, + 0.0004, + 0.0006, + 0.0006, + 0.0009, + 0.0009, + 0.0011, + 0.0011, + 0.0014, + 0.0014, + 0.0019, + 0.0019, + 0.0028, + 0.0028, + 0.0044, + 0.0044, + 0.0067, + 0.0067, + 0.0105, + 0.0105, + 0.0171, + 0.0171, + 0.0289, + 0.0289, + 0.0482, + 0.0482, + 0.0782, + 0.0782, + 0.1323, + 0.1323, + 0.2124, + 0.2124, + 0.3158, + 0.3158, + 0.4681, + 0.4681, + 0.6244, + 0.6244, + 0.0507, + 0.0507, + 0.0026, + 0.0026, + 0.0005, + 0.0005, + 0.0004, + 0.0004, + 0.0007, + 0.0007, + 0.0009, + 0.0009, + 0.0011, + 0.0011, + 0.0014, + 0.0014, + 0.002, + 0.002, + 0.0029, + 0.0029, + 0.0045, + 0.0045, + 0.007, + 0.007, + 0.0109, + 0.0109, + 0.018, + 0.018, + 0.0298, + 0.0298, + 0.0498, + 0.0498, + 0.0802, + 0.0802, + 0.1357, + 0.1357, + 0.2189, + 0.2189, + 0.3227, + 0.3227, + 0.475, + 0.475, + 0.6314, + 0.6314 + ] + }, + "FertilityDistribution": { + "NumDistributionAxes": 2, + "AxisNames": [ + "age", + "year" + ], + "AxisUnits": [ + "years", + "simulation year" + ], + "AxisScaleFactors": [ + 365, + 1 + ], + "NumPopulationGroups": [ + 18, + 144 + ], + "PopulationGroups": [ + [ + 10, + 14.9999, + 15, + 19.9999, + 20, + 24.9999, + 25, + 29.9999, + 30, + 34.9999, + 35, + 39.9999, + 40, + 44.9999, + 45, + 49.9999, + 50, + 54.9999 + ], + [ + 1950, + 1950.999, + 1951, + 1951.999, + 1952, + 1952.999, + 1953, + 1953.999, + 1954, + 1954.999, + 1955, + 1955.999, + 1956, + 1956.999, + 1957, + 1957.999, + 1958, + 1958.999, + 1959, + 1959.999, + 1960, + 1960.999, + 1961, + 1961.999, + 1962, + 1962.999, + 1963, + 1963.999, + 1964, + 1964.999, + 1965, + 1965.999, + 1966, + 1966.999, + 1967, + 1967.999, + 1968, + 1968.999, + 1969, + 1969.999, + 1970, + 1970.999, + 1971, + 1971.999, + 1972, + 1972.999, + 1973, + 1973.999, + 1974, + 1974.999, + 1975, + 1975.999, + 1976, + 1976.999, + 1977, + 1977.999, + 1978, + 1978.999, + 1979, + 1979.999, + 1980, + 1980.999, + 1981, + 1981.999, + 1982, + 1982.999, + 1983, + 1983.999, + 1984, + 1984.999, + 1985, + 1985.999, + 1986, + 1986.999, + 1987, + 1987.999, + 1988, + 1988.999, + 1989, + 1989.999, + 1990, + 1990.999, + 1991, + 1991.999, + 1992, + 1992.999, + 1993, + 1993.999, + 1994, + 1994.999, + 1995, + 1995.999, + 1996, + 1996.999, + 1997, + 1997.999, + 1998, + 1998.999, + 1999, + 1999.999, + 2000, + 2000.999, + 2001, + 2001.999, + 2002, + 2002.999, + 2003, + 2003.999, + 2004, + 2004.999, + 2005, + 2005.999, + 2006, + 2006.999, + 2007, + 2007.999, + 2008, + 2008.999, + 2009, + 2009.999, + 2010, + 2010.999, + 2011, + 2011.999, + 2012, + 2012.999, + 2013, + 2013.999, + 2014, + 2014.999, + 2015, + 2015.999, + 2016, + 2016.999, + 2017, + 2017.999, + 2018, + 2018.999, + 2019, + 2019.999, + 2020, + 2020.999, + 2021, + 2021.999 + ] + ], + "ResultUnits": "annual births per 1000 individuals", + "ResultScaleFactor": 2.7397e-06, + "ResultValues": [ + 13.16, + 13.16, + 179.69, + 179.69, + 257.46, + 257.46, + 301.84, + 301.84, + 269.87, + 269.87, + 204.68, + 204.68, + 108.56, + 108.56, + 24.47, + 24.47, + 0.91, + 0.91, + 13.16, + 13.16, + 179.69, + 179.69, + 257.46, + 257.46, + 301.84, + 301.84, + 269.87, + 269.87, + 204.68, + 204.68, + 108.56, + 108.56, + 24.47, + 24.47, + 0.91, + 0.91, + 12.98, + 12.98, + 179.27, + 179.27, + 256.94, + 256.94, + 301.69, + 301.69, + 270.68, + 270.68, + 205.36, + 205.36, + 108.54, + 108.54, + 24.32, + 24.32, + 0.91, + 0.91, + 12.98, + 12.98, + 179.27, + 179.27, + 256.94, + 256.94, + 301.69, + 301.69, + 270.68, + 270.68, + 205.36, + 205.36, + 108.54, + 108.54, + 24.32, + 24.32, + 0.91, + 0.91, + 12.94, + 12.94, + 179.43, + 179.43, + 256.76, + 256.76, + 301.17, + 301.17, + 271.72, + 271.72, + 204.76, + 204.76, + 108.85, + 108.85, + 24.18, + 24.18, + 0.9, + 0.9, + 12.94, + 12.94, + 179.43, + 179.43, + 256.76, + 256.76, + 301.17, + 301.17, + 271.72, + 271.72, + 204.76, + 204.76, + 108.85, + 108.85, + 24.18, + 24.18, + 0.9, + 0.9, + 12.9, + 12.9, + 178.56, + 178.56, + 256.29, + 256.29, + 301.17, + 301.17, + 271.92, + 271.92, + 204.94, + 204.94, + 109.67, + 109.67, + 24.33, + 24.33, + 0.91, + 0.91, + 12.9, + 12.9, + 178.56, + 178.56, + 256.29, + 256.29, + 301.17, + 301.17, + 271.92, + 271.92, + 204.94, + 204.94, + 109.67, + 109.67, + 24.33, + 24.33, + 0.91, + 0.91, + 12.02, + 12.02, + 174.37, + 174.37, + 260.5, + 260.5, + 301.83, + 301.83, + 271.62, + 271.62, + 205.27, + 205.27, + 109.38, + 109.38, + 24.62, + 24.62, + 0.95, + 0.95, + 12.02, + 12.02, + 174.37, + 174.37, + 260.5, + 260.5, + 301.83, + 301.83, + 271.62, + 271.62, + 205.27, + 205.27, + 109.38, + 109.38, + 24.62, + 24.62, + 0.95, + 0.95, + 11.19, + 11.19, + 169.67, + 169.67, + 264.82, + 264.82, + 302.3, + 302.3, + 271.87, + 271.87, + 205.23, + 205.23, + 109.2, + 109.2, + 25.15, + 25.15, + 1.02, + 1.02, + 11.19, + 11.19, + 169.67, + 169.67, + 264.82, + 264.82, + 302.3, + 302.3, + 271.87, + 271.87, + 205.23, + 205.23, + 109.2, + 109.2, + 25.15, + 25.15, + 1.02, + 1.02, + 10.73, + 10.73, + 166.38, + 166.38, + 269.11, + 269.11, + 302.07, + 302.07, + 271.69, + 271.69, + 204.59, + 204.59, + 109.03, + 109.03, + 25.74, + 25.74, + 1.1, + 1.1, + 10.73, + 10.73, + 166.38, + 166.38, + 269.11, + 269.11, + 302.07, + 302.07, + 271.69, + 271.69, + 204.59, + 204.59, + 109.03, + 109.03, + 25.74, + 25.74, + 1.1, + 1.1, + 10.4, + 10.4, + 163.61, + 163.61, + 272.93, + 272.93, + 301.34, + 301.34, + 271.29, + 271.29, + 203.87, + 203.87, + 109.48, + 109.48, + 26.41, + 26.41, + 1.18, + 1.18, + 10.4, + 10.4, + 163.61, + 163.61, + 272.93, + 272.93, + 301.34, + 301.34, + 271.29, + 271.29, + 203.87, + 203.87, + 109.48, + 109.48, + 26.41, + 26.41, + 1.18, + 1.18, + 9.98, + 9.98, + 160.58, + 160.58, + 277.19, + 277.19, + 301.82, + 301.82, + 270.29, + 270.29, + 203.69, + 203.69, + 109.11, + 109.11, + 26.7, + 26.7, + 1.23, + 1.23, + 9.98, + 9.98, + 160.58, + 160.58, + 277.19, + 277.19, + 301.82, + 301.82, + 270.29, + 270.29, + 203.69, + 203.69, + 109.11, + 109.11, + 26.7, + 26.7, + 1.23, + 1.23, + 9.28, + 9.28, + 156.51, + 156.51, + 279.93, + 279.93, + 303.6, + 303.6, + 269.16, + 269.16, + 202.86, + 202.86, + 109.81, + 109.81, + 28.1, + 28.1, + 1.4, + 1.4, + 9.28, + 9.28, + 156.51, + 156.51, + 279.93, + 279.93, + 303.6, + 303.6, + 269.16, + 269.16, + 202.86, + 202.86, + 109.81, + 109.81, + 28.1, + 28.1, + 1.4, + 1.4, + 8.98, + 8.98, + 153.8, + 153.8, + 280.78, + 280.78, + 306.34, + 306.34, + 269.51, + 269.51, + 201.72, + 201.72, + 109.29, + 109.29, + 28.95, + 28.95, + 1.52, + 1.52, + 8.98, + 8.98, + 153.8, + 153.8, + 280.78, + 280.78, + 306.34, + 306.34, + 269.51, + 269.51, + 201.72, + 201.72, + 109.29, + 109.29, + 28.95, + 28.95, + 1.52, + 1.52, + 8.77, + 8.77, + 152.1, + 152.1, + 280.81, + 280.81, + 307.91, + 307.91, + 269.93, + 269.93, + 200.81, + 200.81, + 109.61, + 109.61, + 29.81, + 29.81, + 1.63, + 1.63, + 8.77, + 8.77, + 152.1, + 152.1, + 280.81, + 280.81, + 307.91, + 307.91, + 269.93, + 269.93, + 200.81, + 200.81, + 109.61, + 109.61, + 29.81, + 29.81, + 1.63, + 1.63, + 8.63, + 8.63, + 151.18, + 151.18, + 282.27, + 282.27, + 308.4, + 308.4, + 270.73, + 270.73, + 200.85, + 200.85, + 108.18, + 108.18, + 29.75, + 29.75, + 1.66, + 1.66, + 8.63, + 8.63, + 151.18, + 151.18, + 282.27, + 282.27, + 308.4, + 308.4, + 270.73, + 270.73, + 200.85, + 200.85, + 108.18, + 108.18, + 29.75, + 29.75, + 1.66, + 1.66, + 8.44, + 8.44, + 150.24, + 150.24, + 283.22, + 283.22, + 308.94, + 308.94, + 271.75, + 271.75, + 201.16, + 201.16, + 106.69, + 106.69, + 29.6, + 29.6, + 1.67, + 1.67, + 8.44, + 8.44, + 150.24, + 150.24, + 283.22, + 283.22, + 308.94, + 308.94, + 271.75, + 271.75, + 201.16, + 201.16, + 106.69, + 106.69, + 29.6, + 29.6, + 1.67, + 1.67, + 7.67, + 7.67, + 147.23, + 147.23, + 284.97, + 284.97, + 311.14, + 311.14, + 272.26, + 272.26, + 200.51, + 200.51, + 106.98, + 106.98, + 29.27, + 29.27, + 1.63, + 1.63, + 7.67, + 7.67, + 147.23, + 147.23, + 284.97, + 284.97, + 311.14, + 311.14, + 272.26, + 272.26, + 200.51, + 200.51, + 106.98, + 106.98, + 29.27, + 29.27, + 1.63, + 1.63, + 7.16, + 7.16, + 145, + 145, + 286.43, + 286.43, + 313.59, + 313.59, + 272.54, + 272.54, + 200.19, + 200.19, + 106.47, + 106.47, + 28.98, + 28.98, + 1.61, + 1.61, + 7.16, + 7.16, + 145, + 145, + 286.43, + 286.43, + 313.59, + 313.59, + 272.54, + 272.54, + 200.19, + 200.19, + 106.47, + 106.47, + 28.98, + 28.98, + 1.61, + 1.61, + 6.64, + 6.64, + 141.64, + 141.64, + 288, + 288, + 315.26, + 315.26, + 272.52, + 272.52, + 200.8, + 200.8, + 106.79, + 106.79, + 28.92, + 28.92, + 1.61, + 1.61, + 6.64, + 6.64, + 141.64, + 141.64, + 288, + 288, + 315.26, + 315.26, + 272.52, + 272.52, + 200.8, + 200.8, + 106.79, + 106.79, + 28.92, + 28.92, + 1.61, + 1.61, + 6.31, + 6.31, + 137.84, + 137.84, + 289.81, + 289.81, + 316.24, + 316.24, + 272.8, + 272.8, + 201.36, + 201.36, + 106.85, + 106.85, + 28.7, + 28.7, + 1.59, + 1.59, + 6.31, + 6.31, + 137.84, + 137.84, + 289.81, + 289.81, + 316.24, + 316.24, + 272.8, + 272.8, + 201.36, + 201.36, + 106.85, + 106.85, + 28.7, + 28.7, + 1.59, + 1.59, + 6.1, + 6.1, + 132.83, + 132.83, + 287.55, + 287.55, + 315.16, + 315.16, + 272.92, + 272.92, + 202.95, + 202.95, + 110.55, + 110.55, + 30.57, + 30.57, + 1.75, + 1.75, + 6.1, + 6.1, + 132.83, + 132.83, + 287.55, + 287.55, + 315.16, + 315.16, + 272.92, + 272.92, + 202.95, + 202.95, + 110.55, + 110.55, + 30.57, + 30.57, + 1.75, + 1.75, + 5.58, + 5.58, + 124.23, + 124.23, + 283.1, + 283.1, + 314.49, + 314.49, + 274.7, + 274.7, + 207.33, + 207.33, + 113.77, + 113.77, + 34.22, + 34.22, + 2.11, + 2.11, + 5.58, + 5.58, + 124.23, + 124.23, + 283.1, + 283.1, + 314.49, + 314.49, + 274.7, + 274.7, + 207.33, + 207.33, + 113.77, + 113.77, + 34.22, + 34.22, + 2.11, + 2.11, + 5.38, + 5.38, + 121.58, + 121.58, + 284.38, + 284.38, + 315.94, + 315.94, + 275.1, + 275.1, + 207.34, + 207.34, + 113.32, + 113.32, + 34.36, + 34.36, + 2.14, + 2.14, + 5.38, + 5.38, + 121.58, + 121.58, + 284.38, + 284.38, + 315.94, + 315.94, + 275.1, + 275.1, + 207.34, + 207.34, + 113.32, + 113.32, + 34.36, + 34.36, + 2.14, + 2.14, + 5.33, + 5.33, + 119.96, + 119.96, + 283.65, + 283.65, + 317.98, + 317.98, + 275.74, + 275.74, + 207.18, + 207.18, + 113.52, + 113.52, + 34.54, + 34.54, + 2.17, + 2.17, + 5.33, + 5.33, + 119.96, + 119.96, + 283.65, + 283.65, + 317.98, + 317.98, + 275.74, + 275.74, + 207.18, + 207.18, + 113.52, + 113.52, + 34.54, + 34.54, + 2.17, + 2.17, + 5.22, + 5.22, + 117.98, + 117.98, + 282.57, + 282.57, + 320.04, + 320.04, + 275.76, + 275.76, + 208.26, + 208.26, + 113.66, + 113.66, + 34.67, + 34.67, + 2.19, + 2.19, + 5.22, + 5.22, + 117.98, + 117.98, + 282.57, + 282.57, + 320.04, + 320.04, + 275.76, + 275.76, + 208.26, + 208.26, + 113.66, + 113.66, + 34.67, + 34.67, + 2.19, + 2.19, + 5.05, + 5.05, + 116.55, + 116.55, + 282.33, + 282.33, + 322.34, + 322.34, + 277.18, + 277.18, + 208.57, + 208.57, + 112.57, + 112.57, + 33.79, + 33.79, + 2.12, + 2.12, + 5.05, + 5.05, + 116.55, + 116.55, + 282.33, + 282.33, + 322.34, + 322.34, + 277.18, + 277.18, + 208.57, + 208.57, + 112.57, + 112.57, + 33.79, + 33.79, + 2.12, + 2.12, + 4.82, + 4.82, + 111.93, + 111.93, + 280.42, + 280.42, + 322.8, + 322.8, + 278.33, + 278.33, + 210.05, + 210.05, + 114.16, + 114.16, + 35.87, + 35.87, + 2.32, + 2.32, + 4.82, + 4.82, + 111.93, + 111.93, + 280.42, + 280.42, + 322.8, + 322.8, + 278.33, + 278.33, + 210.05, + 210.05, + 114.16, + 114.16, + 35.87, + 35.87, + 2.32, + 2.32, + 4.6, + 4.6, + 107.52, + 107.52, + 278.69, + 278.69, + 323.53, + 323.53, + 279.18, + 279.18, + 211.58, + 211.58, + 115.33, + 115.33, + 37.82, + 37.82, + 2.52, + 2.52, + 4.6, + 4.6, + 107.52, + 107.52, + 278.69, + 278.69, + 323.53, + 323.53, + 279.18, + 279.18, + 211.58, + 211.58, + 115.33, + 115.33, + 37.82, + 37.82, + 2.52, + 2.52, + 4.43, + 4.43, + 103.23, + 103.23, + 275.5, + 275.5, + 322.55, + 322.55, + 280.75, + 280.75, + 212.49, + 212.49, + 117.16, + 117.16, + 41.23, + 41.23, + 2.85, + 2.85, + 4.43, + 4.43, + 103.23, + 103.23, + 275.5, + 275.5, + 322.55, + 322.55, + 280.75, + 280.75, + 212.49, + 212.49, + 117.16, + 117.16, + 41.23, + 41.23, + 2.85, + 2.85, + 4.49, + 4.49, + 101.88, + 101.88, + 273.96, + 273.96, + 321.46, + 321.46, + 280.52, + 280.52, + 213.29, + 213.29, + 117.73, + 117.73, + 42.28, + 42.28, + 2.95, + 2.95, + 4.49, + 4.49, + 101.88, + 101.88, + 273.96, + 273.96, + 321.46, + 321.46, + 280.52, + 280.52, + 213.29, + 213.29, + 117.73, + 117.73, + 42.28, + 42.28, + 2.95, + 2.95, + 4.61, + 4.61, + 101.47, + 101.47, + 270.71, + 270.71, + 320.14, + 320.14, + 279.14, + 279.14, + 214.48, + 214.48, + 119.27, + 119.27, + 42.94, + 42.94, + 2.99, + 2.99, + 4.61, + 4.61, + 101.47, + 101.47, + 270.71, + 270.71, + 320.14, + 320.14, + 279.14, + 279.14, + 214.48, + 214.48, + 119.27, + 119.27, + 42.94, + 42.94, + 2.99, + 2.99, + 4.81, + 4.81, + 102.2, + 102.2, + 267.86, + 267.86, + 317.26, + 317.26, + 277.82, + 277.82, + 215.14, + 215.14, + 120.19, + 120.19, + 43.49, + 43.49, + 3.04, + 3.04, + 4.81, + 4.81, + 102.2, + 102.2, + 267.86, + 267.86, + 317.26, + 317.26, + 277.82, + 277.82, + 215.14, + 215.14, + 120.19, + 120.19, + 43.49, + 43.49, + 3.04, + 3.04, + 5.07, + 5.07, + 102.94, + 102.94, + 264.04, + 264.04, + 315.63, + 315.63, + 276.17, + 276.17, + 215.47, + 215.47, + 120.9, + 120.9, + 43.58, + 43.58, + 3.04, + 3.04, + 5.07, + 5.07, + 102.94, + 102.94, + 264.04, + 264.04, + 315.63, + 315.63, + 276.17, + 276.17, + 215.47, + 215.47, + 120.9, + 120.9, + 43.58, + 43.58, + 3.04, + 3.04, + 5.26, + 5.26, + 103.36, + 103.36, + 261.26, + 261.26, + 313.37, + 313.37, + 273.25, + 273.25, + 215.86, + 215.86, + 121.56, + 121.56, + 44.43, + 44.43, + 3.12, + 3.12, + 5.26, + 5.26, + 103.36, + 103.36, + 261.26, + 261.26, + 313.37, + 313.37, + 273.25, + 273.25, + 215.86, + 215.86, + 121.56, + 121.56, + 44.43, + 44.43, + 3.12, + 3.12, + 5.17, + 5.17, + 101.86, + 101.86, + 258.22, + 258.22, + 311.24, + 311.24, + 272.8, + 272.8, + 216.04, + 216.04, + 122.9, + 122.9, + 44.68, + 44.68, + 3.13, + 3.13, + 5.17, + 5.17, + 101.86, + 101.86, + 258.22, + 258.22, + 311.24, + 311.24, + 272.8, + 272.8, + 216.04, + 216.04, + 122.9, + 122.9, + 44.68, + 44.68, + 3.13, + 3.13, + 5.13, + 5.13, + 100.72, + 100.72, + 255.82, + 255.82, + 309.41, + 309.41, + 270.97, + 270.97, + 216.06, + 216.06, + 123.9, + 123.9, + 45.41, + 45.41, + 3.19, + 3.19, + 5.13, + 5.13, + 100.72, + 100.72, + 255.82, + 255.82, + 309.41, + 309.41, + 270.97, + 270.97, + 216.06, + 216.06, + 123.9, + 123.9, + 45.41, + 45.41, + 3.19, + 3.19, + 5.12, + 5.12, + 100, + 100, + 252.65, + 252.65, + 307.58, + 307.58, + 269.77, + 269.77, + 216.42, + 216.42, + 124.44, + 124.44, + 45.87, + 45.87, + 3.22, + 3.22, + 5.12, + 5.12, + 100, + 100, + 252.65, + 252.65, + 307.58, + 307.58, + 269.77, + 269.77, + 216.42, + 216.42, + 124.44, + 124.44, + 45.87, + 45.87, + 3.22, + 3.22, + 5.23, + 5.23, + 101.55, + 101.55, + 255.02, + 255.02, + 307.32, + 307.32, + 269.68, + 269.68, + 212.21, + 212.21, + 120.91, + 120.91, + 44.01, + 44.01, + 3.06, + 3.06, + 5.23, + 5.23, + 101.55, + 101.55, + 255.02, + 255.02, + 307.32, + 307.32, + 269.68, + 269.68, + 212.21, + 212.21, + 120.91, + 120.91, + 44.01, + 44.01, + 3.06, + 3.06, + 5.49, + 5.49, + 103.82, + 103.82, + 256.81, + 256.81, + 307.34, + 307.34, + 268.59, + 268.59, + 208.12, + 208.12, + 117.33, + 117.33, + 42.07, + 42.07, + 2.9, + 2.9, + 5.49, + 5.49, + 103.82, + 103.82, + 256.81, + 256.81, + 307.34, + 307.34, + 268.59, + 268.59, + 208.12, + 208.12, + 117.33, + 117.33, + 42.07, + 42.07, + 2.9, + 2.9, + 5.74, + 5.74, + 105.75, + 105.75, + 257.67, + 257.67, + 307.37, + 307.37, + 267.73, + 267.73, + 204.55, + 204.55, + 113.39, + 113.39, + 40.23, + 40.23, + 2.76, + 2.76, + 5.74, + 5.74, + 105.75, + 105.75, + 257.67, + 257.67, + 307.37, + 307.37, + 267.73, + 267.73, + 204.55, + 204.55, + 113.39, + 113.39, + 40.23, + 40.23, + 2.76, + 2.76, + 5.59, + 5.59, + 104.9, + 104.9, + 258.86, + 258.86, + 304.62, + 304.62, + 268.37, + 268.37, + 202.71, + 202.71, + 110.52, + 110.52, + 38.54, + 38.54, + 2.63, + 2.63, + 5.59, + 5.59, + 104.9, + 104.9, + 258.86, + 258.86, + 304.62, + 304.62, + 268.37, + 268.37, + 202.71, + 202.71, + 110.52, + 110.52, + 38.54, + 38.54, + 2.63, + 2.63, + 5.55, + 5.55, + 105, + 105, + 260.08, + 260.08, + 301.33, + 301.33, + 268.04, + 268.04, + 199.78, + 199.78, + 107.4, + 107.4, + 36.94, + 36.94, + 2.52, + 2.52, + 5.55, + 5.55, + 105, + 105, + 260.08, + 260.08, + 301.33, + 301.33, + 268.04, + 268.04, + 199.78, + 199.78, + 107.4, + 107.4, + 36.94, + 36.94, + 2.52, + 2.52, + 4.94, + 4.94, + 100.52, + 100.52, + 261.5, + 261.5, + 300.37, + 300.37, + 265.65, + 265.65, + 197.73, + 197.73, + 104.93, + 104.93, + 36.08, + 36.08, + 2.49, + 2.49, + 4.94, + 4.94, + 100.52, + 100.52, + 261.5, + 261.5, + 300.37, + 300.37, + 265.65, + 265.65, + 197.73, + 197.73, + 104.93, + 104.93, + 36.08, + 36.08, + 2.49, + 2.49, + 4.43, + 4.43, + 96.66, + 96.66, + 259.68, + 259.68, + 301.25, + 301.25, + 263.47, + 263.47, + 194.92, + 194.92, + 101.49, + 101.49, + 34.98, + 34.98, + 2.44, + 2.44, + 4.43, + 4.43, + 96.66, + 96.66, + 259.68, + 259.68, + 301.25, + 301.25, + 263.47, + 263.47, + 194.92, + 194.92, + 101.49, + 101.49, + 34.98, + 34.98, + 2.44, + 2.44, + 3.98, + 3.98, + 92.54, + 92.54, + 257.17, + 257.17, + 302.17, + 302.17, + 260.62, + 260.62, + 191.62, + 191.62, + 98.32, + 98.32, + 33.58, + 33.58, + 2.36, + 2.36, + 3.98, + 3.98, + 92.54, + 92.54, + 257.17, + 257.17, + 302.17, + 302.17, + 260.62, + 260.62, + 191.62, + 191.62, + 98.32, + 98.32, + 33.58, + 33.58, + 2.36, + 2.36, + 3.83, + 3.83, + 92.41, + 92.41, + 259.12, + 259.12, + 301.92, + 301.92, + 255.36, + 255.36, + 185.18, + 185.18, + 93.78, + 93.78, + 29.3, + 29.3, + 1.99, + 1.99, + 3.83, + 3.83, + 92.41, + 92.41, + 259.12, + 259.12, + 301.92, + 301.92, + 255.36, + 255.36, + 185.18, + 185.18, + 93.78, + 93.78, + 29.3, + 29.3, + 1.99, + 1.99, + 3.65, + 3.65, + 91.65, + 91.65, + 258.65, + 258.65, + 298.66, + 298.66, + 250.98, + 250.98, + 181.92, + 181.92, + 89.55, + 89.55, + 25.18, + 25.18, + 1.62, + 1.62, + 3.65, + 3.65, + 91.65, + 91.65, + 258.65, + 258.65, + 298.66, + 298.66, + 250.98, + 250.98, + 181.92, + 181.92, + 89.55, + 89.55, + 25.18, + 25.18, + 1.62, + 1.62, + 3.17, + 3.17, + 86.71, + 86.71, + 258.21, + 258.21, + 296.25, + 296.25, + 246.98, + 246.98, + 176.16, + 176.16, + 86.78, + 86.78, + 22.91, + 22.91, + 1.44, + 1.44, + 3.17, + 3.17, + 86.71, + 86.71, + 258.21, + 258.21, + 296.25, + 296.25, + 246.98, + 246.98, + 176.16, + 176.16, + 86.78, + 86.78, + 22.91, + 22.91, + 1.44, + 1.44, + 3.14, + 3.14, + 85.48, + 85.48, + 254.19, + 254.19, + 290.95, + 290.95, + 240.75, + 240.75, + 170.7, + 170.7, + 84.76, + 84.76, + 22.3, + 22.3, + 1.38, + 1.38, + 3.14, + 3.14, + 85.48, + 85.48, + 254.19, + 254.19, + 290.95, + 290.95, + 240.75, + 240.75, + 170.7, + 170.7, + 84.76, + 84.76, + 22.3, + 22.3, + 1.38, + 1.38, + 2.93, + 2.93, + 81.26, + 81.26, + 247.56, + 247.56, + 285.74, + 285.74, + 237.21, + 237.21, + 166.68, + 166.68, + 82.39, + 82.39, + 22.3, + 22.3, + 1.4, + 1.4, + 2.93, + 2.93, + 81.26, + 81.26, + 247.56, + 247.56, + 285.74, + 285.74, + 237.21, + 237.21, + 166.68, + 166.68, + 82.39, + 82.39, + 22.3, + 22.3, + 1.4, + 1.4, + 2.81, + 2.81, + 79.98, + 79.98, + 246.37, + 246.37, + 282.89, + 282.89, + 234.53, + 234.53, + 158.11, + 158.11, + 74.64, + 74.64, + 19.89, + 19.89, + 1.24, + 1.24, + 2.81, + 2.81, + 79.98, + 79.98, + 246.37, + 246.37, + 282.89, + 282.89, + 234.53, + 234.53, + 158.11, + 158.11, + 74.64, + 74.64, + 19.89, + 19.89, + 1.24, + 1.24, + 2.66, + 2.66, + 76.83, + 76.83, + 241.14, + 241.14, + 280.08, + 280.08, + 232.31, + 232.31, + 153.18, + 153.18, + 70.84, + 70.84, + 19.07, + 19.07, + 1.19, + 1.19, + 2.66, + 2.66, + 76.83, + 76.83, + 241.14, + 241.14, + 280.08, + 280.08, + 232.31, + 232.31, + 153.18, + 153.18, + 70.84, + 70.84, + 19.07, + 19.07, + 1.19, + 1.19, + 2.56, + 2.56, + 74.75, + 74.75, + 232.69, + 232.69, + 275.09, + 275.09, + 229.2, + 229.2, + 150.22, + 150.22, + 66.89, + 66.89, + 17.74, + 17.74, + 1.09, + 1.09, + 2.56, + 2.56, + 74.75, + 74.75, + 232.69, + 232.69, + 275.09, + 275.09, + 229.2, + 229.2, + 150.22, + 150.22, + 66.89, + 66.89, + 17.74, + 17.74, + 1.09, + 1.09, + 2.34, + 2.34, + 72.27, + 72.27, + 227.83, + 227.83, + 273.1, + 273.1, + 223.44, + 223.44, + 143.15, + 143.15, + 62.98, + 62.98, + 17.56, + 17.56, + 1.13, + 1.13, + 2.34, + 2.34, + 72.27, + 72.27, + 227.83, + 227.83, + 273.1, + 273.1, + 223.44, + 223.44, + 143.15, + 143.15, + 62.98, + 62.98, + 17.56, + 17.56, + 1.13, + 1.13, + 2.17, + 2.17, + 69.32, + 69.32, + 221.9, + 221.9, + 273.29, + 273.29, + 217.89, + 217.89, + 137.09, + 137.09, + 59.84, + 59.84, + 18, + 18, + 1.25, + 1.25, + 2.17, + 2.17, + 69.32, + 69.32, + 221.9, + 221.9, + 273.29, + 273.29, + 217.89, + 217.89, + 137.09, + 137.09, + 59.84, + 59.84, + 18, + 18, + 1.25, + 1.25, + 2.01, + 2.01, + 67.36, + 67.36, + 218.15, + 218.15, + 271.07, + 271.07, + 211.18, + 211.18, + 131.16, + 131.16, + 56.28, + 56.28, + 16.61, + 16.61, + 1.17, + 1.17, + 2.01, + 2.01, + 67.36, + 67.36, + 218.15, + 218.15, + 271.07, + 271.07, + 211.18, + 211.18, + 131.16, + 131.16, + 56.28, + 56.28, + 16.61, + 16.61, + 1.17, + 1.17, + 1.84, + 1.84, + 65.28, + 65.28, + 214.44, + 214.44, + 268.98, + 268.98, + 205.95, + 205.95, + 125.26, + 125.26, + 51.83, + 51.83, + 15.12, + 15.12, + 1.08, + 1.08, + 1.84, + 1.84, + 65.28, + 65.28, + 214.44, + 214.44, + 268.98, + 268.98, + 205.95, + 205.95, + 125.26, + 125.26, + 51.83, + 51.83, + 15.12, + 15.12, + 1.08, + 1.08, + 1.7, + 1.7, + 61.91, + 61.91, + 209.29, + 209.29, + 261.84, + 261.84, + 202.72, + 202.72, + 123.32, + 123.32, + 50.23, + 50.23, + 14.52, + 14.52, + 1.05, + 1.05, + 1.7, + 1.7, + 61.91, + 61.91, + 209.29, + 209.29, + 261.84, + 261.84, + 202.72, + 202.72, + 123.32, + 123.32, + 50.23, + 50.23, + 14.52, + 14.52, + 1.05, + 1.05, + 1.52, + 1.52, + 60.17, + 60.17, + 207.19, + 207.19, + 257.75, + 257.75, + 199.32, + 199.32, + 117.49, + 117.49, + 47.03, + 47.03, + 13.24, + 13.24, + 0.96, + 0.96, + 1.52, + 1.52, + 60.17, + 60.17, + 207.19, + 207.19, + 257.75, + 257.75, + 199.32, + 199.32, + 117.49, + 117.49, + 47.03, + 47.03, + 13.24, + 13.24, + 0.96, + 0.96, + 1.47, + 1.47, + 59.8, + 59.8, + 207.54, + 207.54, + 258.3, + 258.3, + 199.4, + 199.4, + 115.28, + 115.28, + 46.26, + 46.26, + 12.83, + 12.83, + 0.93, + 0.93, + 1.47, + 1.47, + 59.8, + 59.8, + 207.54, + 207.54, + 258.3, + 258.3, + 199.4, + 199.4, + 115.28, + 115.28, + 46.26, + 46.26, + 12.83, + 12.83, + 0.93, + 0.93, + 1.24, + 1.24, + 57.19, + 57.19, + 205.77, + 205.77, + 257.85, + 257.85, + 197.21, + 197.21, + 110.59, + 110.59, + 43.82, + 43.82, + 11.99, + 11.99, + 0.89, + 0.89, + 1.24, + 1.24, + 57.19, + 57.19, + 205.77, + 205.77, + 257.85, + 257.85, + 197.21, + 197.21, + 110.59, + 110.59, + 43.82, + 43.82, + 11.99, + 11.99, + 0.89, + 0.89, + 1.08, + 1.08, + 55.43, + 55.43, + 205.38, + 205.38, + 255.09, + 255.09, + 194.99, + 194.99, + 106.65, + 106.65, + 41.67, + 41.67, + 11.29, + 11.29, + 0.85, + 0.85, + 1.08, + 1.08, + 55.43, + 55.43, + 205.38, + 205.38, + 255.09, + 255.09, + 194.99, + 194.99, + 106.65, + 106.65, + 41.67, + 41.67, + 11.29, + 11.29, + 0.85, + 0.85, + 0.99, + 0.99, + 54.13, + 54.13, + 205.06, + 205.06, + 252.09, + 252.09, + 192.84, + 192.84, + 103.31, + 103.31, + 40.25, + 40.25, + 10.74, + 10.74, + 0.82, + 0.82, + 0.99, + 0.99, + 54.13, + 54.13, + 205.06, + 205.06, + 252.09, + 252.09, + 192.84, + 192.84, + 103.31, + 103.31, + 40.25, + 40.25, + 10.74, + 10.74, + 0.82, + 0.82, + 0.79, + 0.79, + 51.12, + 51.12, + 200.77, + 200.77, + 248.83, + 248.83, + 195.12, + 195.12, + 101.38, + 101.38, + 38.77, + 38.77, + 10.41, + 10.41, + 0.81, + 0.81, + 0.79, + 0.79, + 51.12, + 51.12, + 200.77, + 200.77, + 248.83, + 248.83, + 195.12, + 195.12, + 101.38, + 101.38, + 38.77, + 38.77, + 10.41, + 10.41, + 0.81, + 0.81, + 0.85, + 0.85, + 50.55, + 50.55, + 196.63, + 196.63, + 247.73, + 247.73, + 190.93, + 190.93, + 99.15, + 99.15, + 37.78, + 37.78, + 10.82, + 10.82, + 0.85, + 0.85, + 0.85, + 0.85, + 50.55, + 50.55, + 196.63, + 196.63, + 247.73, + 247.73, + 190.93, + 190.93, + 99.15, + 99.15, + 37.78, + 37.78, + 10.82, + 10.82, + 0.85, + 0.85, + 0.88, + 0.88, + 49.98, + 49.98, + 192.8, + 192.8, + 245.09, + 245.09, + 188.14, + 188.14, + 96.54, + 96.54, + 37.21, + 37.21, + 11.32, + 11.32, + 0.9, + 0.9, + 0.88, + 0.88, + 49.98, + 49.98, + 192.8, + 192.8, + 245.09, + 245.09, + 188.14, + 188.14, + 96.54, + 96.54, + 37.21, + 37.21, + 11.32, + 11.32, + 0.9, + 0.9, + 0.87, + 0.87, + 49.02, + 49.02, + 188.93, + 188.93, + 239.53, + 239.53, + 184.3, + 184.3, + 92.62, + 92.62, + 35.08, + 35.08, + 11.41, + 11.41, + 0.93, + 0.93, + 0.87, + 0.87, + 49.02, + 49.02, + 188.93, + 188.93, + 239.53, + 239.53, + 184.3, + 184.3, + 92.62, + 92.62, + 35.08, + 35.08, + 11.41, + 11.41, + 0.93, + 0.93, + 0.85, + 0.85, + 47.58, + 47.58, + 184.07, + 184.07, + 234.74, + 234.74, + 180.38, + 180.38, + 89.13, + 89.13, + 33.21, + 33.21, + 11.41, + 11.41, + 0.95, + 0.95, + 0.85, + 0.85, + 47.58, + 47.58, + 184.07, + 184.07, + 234.74, + 234.74, + 180.38, + 180.38, + 89.13, + 89.13, + 33.21, + 33.21, + 11.41, + 11.41, + 0.95, + 0.95, + 0.83, + 0.83, + 46.74, + 46.74, + 181.46, + 181.46, + 231.29, + 231.29, + 176.42, + 176.42, + 86.47, + 86.47, + 31.71, + 31.71, + 10.92, + 10.92, + 0.91, + 0.91, + 0.83, + 0.83, + 46.74, + 46.74, + 181.46, + 181.46, + 231.29, + 231.29, + 176.42, + 176.42, + 86.47, + 86.47, + 31.71, + 31.71, + 10.92, + 10.92, + 0.91, + 0.91, + 0.8, + 0.8, + 45.8, + 45.8, + 179.93, + 179.93, + 227.96, + 227.96, + 172.31, + 172.31, + 84.52, + 84.52, + 30.67, + 30.67, + 10.31, + 10.31, + 0.86, + 0.86, + 0.8, + 0.8, + 45.8, + 45.8, + 179.93, + 179.93, + 227.96, + 227.96, + 172.31, + 172.31, + 84.52, + 84.52, + 30.67, + 30.67, + 10.31, + 10.31, + 0.86, + 0.86, + 0.75, + 0.75, + 44.91, + 44.91, + 177.96, + 177.96, + 224.63, + 224.63, + 168.3, + 168.3, + 81.85, + 81.85, + 29.26, + 29.26, + 9.83, + 9.83, + 0.83, + 0.83, + 0.75, + 0.75, + 44.91, + 44.91, + 177.96, + 177.96, + 224.63, + 224.63, + 168.3, + 168.3, + 81.85, + 81.85, + 29.26, + 29.26, + 9.83, + 9.83, + 0.83, + 0.83, + 0.7, + 0.7, + 43.89, + 43.89, + 175.9, + 175.9, + 221.39, + 221.39, + 165.33, + 165.33, + 79.74, + 79.74, + 28.35, + 28.35, + 9.35, + 9.35, + 0.79, + 0.79, + 0.7, + 0.7, + 43.89, + 43.89, + 175.9, + 175.9, + 221.39, + 221.39, + 165.33, + 165.33, + 79.74, + 79.74, + 28.35, + 28.35, + 9.35, + 9.35, + 0.79, + 0.79, + 0.66, + 0.66, + 43.21, + 43.21, + 174.64, + 174.64, + 218.35, + 218.35, + 160.87, + 160.87, + 77.7, + 77.7, + 27.46, + 27.46, + 8.71, + 8.71, + 0.74, + 0.74, + 0.66, + 0.66, + 43.21, + 43.21, + 174.64, + 174.64, + 218.35, + 218.35, + 160.87, + 160.87, + 77.7, + 77.7, + 27.46, + 27.46, + 8.71, + 8.71, + 0.74, + 0.74, + 0.61, + 0.61, + 42.27, + 42.27, + 172.24, + 172.24, + 213.99, + 213.99, + 155.84, + 155.84, + 75.35, + 75.35, + 26.17, + 26.17, + 8.19, + 8.19, + 0.7, + 0.7, + 0.61, + 0.61, + 42.27, + 42.27, + 172.24, + 172.24, + 213.99, + 213.99, + 155.84, + 155.84, + 75.35, + 75.35, + 26.17, + 26.17, + 8.19, + 8.19, + 0.7, + 0.7 + ] + } + } + } + ] +} + From 3a2a0ca8f56590bec9efcda3bca40ce3d4e4b957 Mon Sep 17 00:00:00 2001 From: Jonathan Bloedow Date: Mon, 25 Sep 2023 10:08:11 -0700 Subject: [PATCH 13/28] Rev'd emod-api and emod-typhoid to enable use of scheduled typhoid vaccine interventions with 2018 branch model. --- requirements_2018.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/requirements_2018.txt b/requirements_2018.txt index 7932181..456a266 100644 --- a/requirements_2018.txt +++ b/requirements_2018.txt @@ -1,3 +1,3 @@ emodpy==1.22.0.dev3 -emod-api==1.30.0.dev3 -emod-typhoid==0.0.2.dev1 +emod-api==1.30.0.dev4 +emod-typhoid==0.0.2.dev2 From 1c7156d1658e5f6df104209032dbcdf23a0e663e Mon Sep 17 00:00:00 2001 From: Jonathan Bloedow Date: Mon, 25 Sep 2023 15:38:29 -0700 Subject: [PATCH 14/28] Make vaccine efficacy profile functional. --- emodpy_typhoid/interventions/typhoid_vaccine.py | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/emodpy_typhoid/interventions/typhoid_vaccine.py b/emodpy_typhoid/interventions/typhoid_vaccine.py index e3cc410..c0000b6 100644 --- a/emodpy_typhoid/interventions/typhoid_vaccine.py +++ b/emodpy_typhoid/interventions/typhoid_vaccine.py @@ -3,7 +3,7 @@ from emod_api.interventions import common import json -def new_intervention( camp, efficacy=1.0, mode="Shedding" ): +def new_intervention( camp, efficacy=0.82, mode="Shedding" ): """ TyphoidVaccine intervention wrapper. Just the intervention. No configuration yet. """ @@ -11,10 +11,15 @@ def new_intervention( camp, efficacy=1.0, mode="Shedding" ): intervention.Effect = efficacy intervention.Mode = mode # WaningEffect is TBD. + intervention.Changing_Effect = s2c.get_class_with_defaults( "WaningEffectExponential" ) + intervention.Changing_Effect.Initial_Effect = efficacy + intervention.Changing_Effect.Decay_Time_Constant = 6935.0 return intervention def new_triggered_intervention( camp, + efficacy=0.82, + mode="Shedding", start_day=1, triggers=[ "Births" ], coverage=1.0, @@ -26,7 +31,7 @@ def new_triggered_intervention( Distribute TyphoidVaccine when something happens as determined by a signal published from the model or another campaign event. """ - iv = new_intervention( camp ) + iv = new_intervention( camp, efficacy, mode ) #event = common.ScheduledCampaignEvent( camp, Start_Day=start_day, Demographic_Coverage=coverage, Intervention_List=[ act_intervention, bcast_intervention ], Node_Ids=nodeIDs, Property_Restrictions=property_restrictions_list ) event = common.TriggeredCampaignEvent( camp, Start_Day=start_day, Triggers=triggers, Demographic_Coverage=coverage, Intervention_List=[ iv ], Node_Ids=node_ids, Property_Restrictions=property_restrictions_list, Event_Name="Triggered Typhoid Vax" ) @@ -35,6 +40,8 @@ def new_triggered_intervention( def new_scheduled_intervention( camp, + efficacy=0.82, + mode="Shedding", start_day=1, coverage=1.0, node_ids=None, @@ -45,7 +52,7 @@ def new_scheduled_intervention( Distribute TyphoidVaccine when something happens as determined by a signal published from the model or another campaign event. """ - iv = new_intervention( camp ) + iv = new_intervention( camp, efficacy, mode ) #event = common.ScheduledCampaignEvent( camp, Start_Day=start_day, Demographic_Coverage=coverage, Intervention_List=[ act_intervention, bcast_intervention ], Node_Ids=nodeIDs, Property_Restrictions=property_restrictions_list ) event = common.ScheduledCampaignEvent( camp, Start_Day=start_day, Demographic_Coverage=coverage, Intervention_List=[ iv ], Node_Ids=node_ids, Property_Restrictions=property_restrictions_list ) From 7c526171747690216fd697e290935743ab8e1cf6 Mon Sep 17 00:00:00 2001 From: Jonathan Bloedow Date: Mon, 25 Sep 2023 15:47:32 -0700 Subject: [PATCH 15/28] Make vaccine efficacy profile functional. --- emodpy_typhoid/interventions/typhoid_vaccine.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/emodpy_typhoid/interventions/typhoid_vaccine.py b/emodpy_typhoid/interventions/typhoid_vaccine.py index c0000b6..c76f98b 100644 --- a/emodpy_typhoid/interventions/typhoid_vaccine.py +++ b/emodpy_typhoid/interventions/typhoid_vaccine.py @@ -3,23 +3,25 @@ from emod_api.interventions import common import json -def new_intervention( camp, efficacy=0.82, mode="Shedding" ): +def new_intervention( camp, efficacy=0.82, mode="Shedding", constant_period=0, decay_constant=6935.0 ): """ TyphoidVaccine intervention wrapper. Just the intervention. No configuration yet. """ intervention = s2c.get_class_with_defaults( "TyphoidVaccine", camp.schema_path ) intervention.Effect = efficacy intervention.Mode = mode - # WaningEffect is TBD. - intervention.Changing_Effect = s2c.get_class_with_defaults( "WaningEffectExponential" ) + intervention.Changing_Effect = s2c.get_class_with_defaults( "WaningEffectBoxExponential" ) intervention.Changing_Effect.Initial_Effect = efficacy - intervention.Changing_Effect.Decay_Time_Constant = 6935.0 + intervention.Changing_Effect.Box_Duration = constant_period + intervention.Changing_Effect.Decay_Time_Constant = decay_constant return intervention def new_triggered_intervention( camp, efficacy=0.82, mode="Shedding", + constant_period=0, + decay_constant=6935.0, start_day=1, triggers=[ "Births" ], coverage=1.0, @@ -42,6 +44,8 @@ def new_scheduled_intervention( camp, efficacy=0.82, mode="Shedding", + constant_period=0, + decay_constant=6935.0, start_day=1, coverage=1.0, node_ids=None, From de10aa8c482de180e4b6f90e7b34aec0eae0b521 Mon Sep 17 00:00:00 2001 From: Jonathan Bloedow Date: Wed, 27 Sep 2023 16:40:54 -0700 Subject: [PATCH 16/28] Pass through waning/duration params. --- emodpy_typhoid/interventions/typhoid_vaccine.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/emodpy_typhoid/interventions/typhoid_vaccine.py b/emodpy_typhoid/interventions/typhoid_vaccine.py index c76f98b..5dbcbf5 100644 --- a/emodpy_typhoid/interventions/typhoid_vaccine.py +++ b/emodpy_typhoid/interventions/typhoid_vaccine.py @@ -33,9 +33,8 @@ def new_triggered_intervention( Distribute TyphoidVaccine when something happens as determined by a signal published from the model or another campaign event. """ - iv = new_intervention( camp, efficacy, mode ) + iv = new_intervention( camp, efficacy=efficacy, mode=mode, constant_period=constant_period, decay_constant=decay_constant ) - #event = common.ScheduledCampaignEvent( camp, Start_Day=start_day, Demographic_Coverage=coverage, Intervention_List=[ act_intervention, bcast_intervention ], Node_Ids=nodeIDs, Property_Restrictions=property_restrictions_list ) event = common.TriggeredCampaignEvent( camp, Start_Day=start_day, Triggers=triggers, Demographic_Coverage=coverage, Intervention_List=[ iv ], Node_Ids=node_ids, Property_Restrictions=property_restrictions_list, Event_Name="Triggered Typhoid Vax" ) return event @@ -56,7 +55,7 @@ def new_scheduled_intervention( Distribute TyphoidVaccine when something happens as determined by a signal published from the model or another campaign event. """ - iv = new_intervention( camp, efficacy, mode ) + iv = new_intervention( camp, efficacy=efficacy, mode=mode, constant_period=constant_period, decay_constant=decay_constant ) #event = common.ScheduledCampaignEvent( camp, Start_Day=start_day, Demographic_Coverage=coverage, Intervention_List=[ act_intervention, bcast_intervention ], Node_Ids=nodeIDs, Property_Restrictions=property_restrictions_list ) event = common.ScheduledCampaignEvent( camp, Start_Day=start_day, Demographic_Coverage=coverage, Intervention_List=[ iv ], Node_Ids=node_ids, Property_Restrictions=property_restrictions_list ) From aa60096d7298d01a693b18a389a99ac9cae7397f Mon Sep 17 00:00:00 2001 From: Jonathan Bloedow Date: Wed, 27 Sep 2023 17:16:48 -0700 Subject: [PATCH 17/28] Don't want that file in version control. --- .../from_files/config_comps_ref.json | 169 ------------------ 1 file changed, 169 deletions(-) delete mode 100644 examples/blantyre_noHINT/from_files/config_comps_ref.json diff --git a/examples/blantyre_noHINT/from_files/config_comps_ref.json b/examples/blantyre_noHINT/from_files/config_comps_ref.json deleted file mode 100644 index bf9f654..0000000 --- a/examples/blantyre_noHINT/from_files/config_comps_ref.json +++ /dev/null @@ -1,169 +0,0 @@ -{ - "parameters": { - "Custom_Coordinator_Events": [], - "Custom_Individual_Events": [], - "Custom_Node_Events": [], - "Enable_Abort_Zero_Infectivity": 0, - "Enable_Maternal_Protection": 0, - "Enable_Natural_Mortality": 1, - "Enable_Susceptibility_Scaling": 0, - "Report_Coordinator_Event_Recorder": 0, - "Report_Node_Event_Recorder": 0, - "Report_Surveillance_Event_Recorder": 0, - - "Acquisition_Blocking_Immunity_Decay_Rate": 0.1, - "Acquisition_Blocking_Immunity_Duration_Before_Decay": 60, - "Age_Initialization_Distribution_Type": "DISTRIBUTION_SIMPLE", - "Air_Temperature_Filename": "", - "Air_Temperature_Offset": 0, - "Air_Temperature_Variance": 2, - "Animal_Reservoir_Type": "NO_ZOONOSIS", - "Base_Air_Temperature": 30, - "Base_Incubation_Period": 3000000, - "Base_Individual_Sample_Rate": 0.1, - "Base_Infectious_Period": 70000000, - "Base_Infectivity": 0.3, - "Base_Land_Temperature": 30, - "Base_Mortality": 0, - "Base_Population_Scale_Factor": 1.64, - "Base_Rainfall": 100, - "Base_Relative_Humidity": 0.5, - "Base_Year": 1917, - "Birth_Rate_Dependence": "INDIVIDUAL_PREGNANCIES_BY_AGE_AND_YEAR", - "Birth_Rate_Time_Dependence": "NONE", - "Burnin_Cache_Mode": "none", - "Burnin_Cache_Period": 0, - "Burnin_Name": "", - "Campaign_Filename": "campaign_routine_exp.json", - "Climate_Model": "CLIMATE_OFF", - "Climate_Update_Resolution": "CLIMATE_UPDATE_DAY", - "Config_Name": "149_Typhoid", - "Death_Rate_Dependence": "NONDISEASE_MORTALITY_BY_YEAR_AND_AGE_FOR_EACH_GENDER", - "Default_Geography_Initial_Node_Population": 1000, - "Default_Geography_Torus_Size": 10, - "Demographics_Filenames": [ - "demographics.json" - ], - "Enable_Absolute_Time": "NO", - "Enable_Aging": 1, - "Enable_Birth": 1, - "Enable_Climate_Stochasticity": 1, - "Enable_Default_Reporting": 1, - "Enable_Default_Shedding_Function": 1, - "Enable_Demographics_Birth": 0, - "Enable_Demographics_Builtin": 0, - "Enable_Demographics_Gender": 1, - "Enable_Demographics_Initial": 1, - "Enable_Demographics_Other": 0, - "Enable_Demographics_Reporting": 0, - "Enable_Disease_Mortality": 0, - "Enable_Heterogeneous_Intranode_Transmission": 0, - "Enable_Immune_Decay": 0, - "Enable_Immunity": 0, - "Enable_Immunity_Initialization_Distribution": 0, - "Enable_Interventions": 1, - "Enable_Maternal_Transmission": 0, - "Enable_Property_Output": 0, - "Enable_Rainfall_Stochasticity": 1, - "_Enable_Skipping": 1, - "Enable_Skipping": 0, - "Enable_Spatial_Output": 0, - "Enable_Superinfection": 0, - "Enable_Vital_Dynamics": 1, - "Environmental_Incubation_Period": 1, - "Geography": "", - "Immunity_Acquisition_Factor": 0, - "Immunity_Initialization_Distribution_Type": "DISTRIBUTION_OFF", - "Immunity_Mortality_Factor": 0, - "Immunity_Transmission_Factor": 0, - "Incubation_Period_Distribution": "FIXED_DURATION", - "Individual_Sampling_Type": "FIXED_SAMPLING", - "Infection_Updates_Per_Timestep": 1, - "Infectious_Period_Distribution": "EXPONENTIAL_DURATION", - "Infectivity_Scale_Type": "CONSTANT_INFECTIVITY", - "Inset_Chart_Reporting_Start_Year": 1917, - "Inset_Chart_Reporting_Stop_Year": 2100, - "Job_Node_Groups": "Chassis08", - "Job_Priority": "BELOWNORMAL", - "Land_Temperature_Filename": "", - "Land_Temperature_Offset": 0, - "Land_Temperature_Variance": 2, - "Listed_Events": [], - "Load_Balance_Filename": "", - "Load_Balance_Scheme": "STATIC", - "Local_Simulation": 0, - "Maternal_Transmission_Probability": 0, - "Max_Individual_Infections": 1, - "Max_Node_Population_Samples": 40, - "Migration_Model": "NO_MIGRATION", - "Minimum_Adult_Age_Years": 15, - "Mortality_Blocking_Immunity_Decay_Rate": 0.001, - "Mortality_Blocking_Immunity_Duration_Before_Decay": 60, - "Mortality_Time_Course": "DAILY_MORTALITY", - "Node_Contagion_Decay_Rate": 0.056278, - "Node_Grid_Size": 0.009, - "Num_Cores": 1, - "Number_Basestrains": 1, - "Number_Substrains": 1, - "PKPD_Model": "FIXED_DURATION_CONSTANT_EFFECT", - "Population_Density_C50": 30, - "Population_Density_Infectivity_Correction": "CONSTANT_INFECTIVITY", - "Population_Scale_Type": "FIXED_SCALING", - "Python_Script_Path": "\\\\idmppfil01\\idm\\home\\jgauld\\input\\Python_Scripts\\", - "Rainfall_Filename": "", - "Rainfall_Scale_Factor": 1, - "Relative_Humidity_Filename": "", - "Relative_Humidity_Scale_Factor": 1, - "Relative_Humidity_Variance": 0.05, - "Report_Event_Recorder": 0, - "Report_Typhoid_ByAgeAndGender_Start_Year": 2000, - "Report_Typhoid_ByAgeAndGender_Stop_Year": 2100, - "Run_Number": 130, - "Sample_Rate_0_18mo": 1, - "Sample_Rate_10_14": 1, - "Sample_Rate_15_19": 1, - "Sample_Rate_18mo_4yr": 1, - "Sample_Rate_20_Plus": 1, - "Sample_Rate_5_9": 1, - "Sample_Rate_Birth": 2, - "Serialization_Test_Cycles": 0, - "Simulation_Duration": 44533, - "Simulation_Timestep": 1, - "Simulation_Type": "TYPHOID_SIM", - "Start_Time": 0, - "Susceptibility_Scaling_Type": "CONSTANT_SUSCEPTIBILITY", - "Transmission_Blocking_Immunity_Decay_Rate": 0.1, - "Transmission_Blocking_Immunity_Duration_Before_Decay": 60, - "Typhoid_3year_Susceptible_Fraction": 0, - "Typhoid_6month_Susceptible_Fraction": 0, - "Typhoid_6year_Susceptible_Fraction": 0, - "Typhoid_Acute_Infectiousness": 13436, - "Typhoid_Carrier_Probability": 1, - "Typhoid_Carrier_Removal_Year": 2500, - "Typhoid_Chronic_Relative_Infectiousness": 0.5, - "Typhoid_Contact_Exposure_Rate": 0.44535910269531453, - "Typhoid_Environmental_Exposure_Rate": 0.24619971394455994, - "__Typhoid_Environmental_Exposure_Rate": 0.024619971394455994, - "Environmental_Cutoff_Days": 1, - "Environmental_Peak_Start": 287.2811494864098, - "Environmental_Ramp_Down_Duration": 1, - "Environmental_Ramp_Up_Duration": 1, - "Typhoid_Exposure_Days": 3864.6481790944667, - "Typhoid_Exposure_Lambda": -0.6982908373479506, - "Typhoid_Immunity_Memory": 22750.6416223787, - "Typhoid_Prepatent_Relative_Infectiousness": 0.5, - "Typhoid_Protection_Per_Infection": 0.7932246576828436, - "Typhoid_Subclinical_Relative_Infectiousness": 0.5, - "Typhoid_Symptomatic_Fraction": 0.04594935339672988, - "__sample_index__": 0, - "logLevel_default": "ERROR", - "x_Air_Migration": 1, - "x_Birth": 1, - "x_Local_Migration": 1, - "x_Other_Mortality": 1, - "x_Population_Immunity": 1, - "x_Regional_Migration": 1, - "x_Sea_Migration": 1, - "x_Temporary_Larval_Habitat": 1 - } -} From 5670fcdbf3f14aee4d4c4177f1f1d4ac1a0d86c8 Mon Sep 17 00:00:00 2001 From: Jonathan Bloedow Date: Wed, 27 Sep 2023 17:39:26 -0700 Subject: [PATCH 18/28] Adding comments during PR review. --- emodpy_typhoid/demographics/TyphoidDemographics.py | 1 + 1 file changed, 1 insertion(+) diff --git a/emodpy_typhoid/demographics/TyphoidDemographics.py b/emodpy_typhoid/demographics/TyphoidDemographics.py index 0434a7c..ab92d8f 100644 --- a/emodpy_typhoid/demographics/TyphoidDemographics.py +++ b/emodpy_typhoid/demographics/TyphoidDemographics.py @@ -9,6 +9,7 @@ class TyphoidDemographics(Demographics): """ def __init__(self, nodes, idref="Gridded world grump2.5arcmin", base_file=None): super().__init__( nodes, idref, base_file ) + # The following is for back-compat with older versions of the model which looked for these keys unconditionally. self.raw["Defaults"]["IndividualAttributes"]["PrevalenceDistributionFlag"] = 0 self.raw["Defaults"]["IndividualAttributes"]["PrevalenceDistribution1"] = 0 self.raw["Defaults"]["IndividualAttributes"]["PrevalenceDistribution2"] = 0 From 7f05a8e9e11ac6017249a6917c2c3e7a089e7b5c Mon Sep 17 00:00:00 2001 From: Jonathan Bloedow Date: Wed, 27 Sep 2023 17:43:58 -0700 Subject: [PATCH 19/28] Removing dead code during PR review. --- examples/blantyre_noHINT/from_files/example.py | 9 --------- 1 file changed, 9 deletions(-) diff --git a/examples/blantyre_noHINT/from_files/example.py b/examples/blantyre_noHINT/from_files/example.py index 3c32392..a568f6a 100755 --- a/examples/blantyre_noHINT/from_files/example.py +++ b/examples/blantyre_noHINT/from_files/example.py @@ -34,15 +34,6 @@ def run(): # Show how to dynamically set priority and node_group platform = Platform("SLURM", node_group="idm_48cores", priority="Highest") - #task = EMODTask.from_files(config_path="config_comps_ref.json", eradication_path=manifest.eradication_path, campaign_path="campaign_routine_exp.json", demographics_paths=["TestDemographics_Mystery_Fert.json"], ep4_path=None) - #task = EMODTask.from_files(config_path="config_comps_ref.json", eradication_path=manifest.eradication_path, campaign_path="campaign_routine_exp.json", demographics_paths=["demographics.json"], ep4_path=None) - #task = EMODTask.from_files(config_path="config_py.json", eradication_path=manifest.eradication_path, campaign_path="campaign_routine_exp.json", demographics_paths=["demographics.json"], ep4_path=None) - #task = EMODTask.from_files(config_path="config.json", eradication_path=manifest.eradication_path, campaign_path="campaign_routine_exp.json", demographics_paths=["demographics.json"], ep4_path=None) - #task = EMODTask.from_files(config_path="config_literal_5mods.json", eradication_path=manifest.eradication_path, campaign_path="campaign_baseline.json", demographics_paths=["TestDemographics_Blantyre.json"], ep4_path=None) - #task = EMODTask.from_files(config_path="config_june242019.json", eradication_path=manifest.eradication_path, campaign_path="campaign_june242019.json", demographics_paths=["TestDemographics_Mystery_Fert.json"], ep4_path=None) - #task = EMODTask.from_files(config_path="config_june242019_plus_to_params.json", eradication_path=manifest.eradication_path, campaign_path="campaign_june242019.json", demographics_paths=["TestDemographics_Mystery_Fert.json"], ep4_path=None) - #task = EMODTask.from_files(config_path="config_june242019_seasonal.json", eradication_path=manifest.eradication_path, campaign_path="campaign_june242019.json", demographics_paths=["TestDemographics_Mystery_Fert.json"], ep4_path=None) - #task = EMODTask.from_files(config_path="config_june242019_seasonal_to.json", eradication_path=manifest.eradication_path, campaign_path="campaign_june242019.json", demographics_paths=["TestDemographics_Mystery_Fert.json"], ep4_path=None) task = EMODTask.from_files(config_path="config_feb162019.json", eradication_path=manifest.eradication_path, campaign_path="campaign_feb162019.json", demographics_paths=["TestDemographics_Blantyre.json"], ep4_path=None) From 0c0b0d624bfe94f12a98296f071daab861a09ed5 Mon Sep 17 00:00:00 2001 From: Jonathan Bloedow Date: Wed, 27 Sep 2023 17:56:41 -0700 Subject: [PATCH 20/28] Dev branch to merge, sans branch changes to keep but not merge. --- requirements.txt | 5 ++--- version.py | 4 +++- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/requirements.txt b/requirements.txt index c1a1fdf..25bfa20 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,3 +1,2 @@ -emod-typhoid==0.0.2.dev0 -emodpy==1.22.0.dev2 - +emodpy~=1.16 +emod-typhoid diff --git a/version.py b/version.py index c060c7d..392c239 100644 --- a/version.py +++ b/version.py @@ -1 +1,3 @@ -__version__='0.0.3' +__version__='0.0.2' + + From e66a13a84e0061376bdd72860adec946ef998f08 Mon Sep 17 00:00:00 2001 From: Jonathan Bloedow Date: Thu, 28 Sep 2023 07:46:48 -0700 Subject: [PATCH 21/28] Added doc strings from ChatGPT for TV. --- .../interventions/typhoid_vaccine.py | 53 ++++++++++++++++--- 1 file changed, 47 insertions(+), 6 deletions(-) diff --git a/emodpy_typhoid/interventions/typhoid_vaccine.py b/emodpy_typhoid/interventions/typhoid_vaccine.py index 5dbcbf5..08c7880 100644 --- a/emodpy_typhoid/interventions/typhoid_vaccine.py +++ b/emodpy_typhoid/interventions/typhoid_vaccine.py @@ -5,8 +5,21 @@ def new_intervention( camp, efficacy=0.82, mode="Shedding", constant_period=0, decay_constant=6935.0 ): """ - TyphoidVaccine intervention wrapper. Just the intervention. No configuration yet. - """ + Create a new TyphoidVaccine intervention with specified parameters. If you use this function directly, + you'll need to distribute the intervention with a function like ScheduledCampaignEvent or TriggeredCampaignEvent + from emod_api.interventions.common. + + Args: + camp (Camp): The camp to which the intervention is applied. + efficacy (float, optional): The efficacy of the Typhoid vaccine. Default is 0.82. + mode (str, optional): The mode of the intervention. Default is "Shedding". + constant_period (float, optional): The constant period of the waning effect in days. Default is 0. + decay_constant (float, optional): The decay time constant for the waning effect. Default is 6935.0. + + Returns: + TyphoidVaccine: A fully configured instance of the TyphoidVaccine intervention with the specified parameters. + """ + intervention = s2c.get_class_with_defaults( "TyphoidVaccine", camp.schema_path ) intervention.Effect = efficacy intervention.Mode = mode @@ -30,8 +43,22 @@ def new_triggered_intervention( co_event=None # expansion slot ): """ - Distribute TyphoidVaccine when something happens as determined by a signal published from the - model or another campaign event. + Create a new triggered TyphoidVaccine intervention based on specified parameters. + Args: + camp (Camp): The camp to which the intervention is applied. + efficacy (float, optional): The efficacy of the Typhoid vaccine. Default is 0.82. + mode (str, optional): The mode of the intervention. Default is "Shedding". + constant_period (float, optional): The constant period of the waning effect in days. Default is 0. + decay_constant (float, optional): The decay time constant for the waning effect. Default is 6935.0. + start_day (int, optional): The day on which the intervention starts. Default is 1. + triggers (list, optional): List of triggers for the intervention. Default is ["Births"]. + coverage (float, optional): Demographic coverage of the intervention. Default is 1.0. + node_ids (list, optional): List of node IDs where the intervention is applied. Default is None. + property_restrictions_list (list, optional): List of property restrictions for the intervention. Default is an empty list. + co_event (None, optional): Expansion slot for future use. + + Returns: + TriggeredCampaignEvent: An instance of a triggered campaign event with the TyphoidVaccine intervention. """ iv = new_intervention( camp, efficacy=efficacy, mode=mode, constant_period=constant_period, decay_constant=decay_constant ) @@ -52,8 +79,22 @@ def new_scheduled_intervention( co_event=None # expansion slot ): """ - Distribute TyphoidVaccine when something happens as determined by a signal published from the - model or another campaign event. + Create a new scheduled TyphoidVaccine intervention based on specified parameters. + Args: + camp (Camp): The camp to which the intervention is applied. + efficacy (float, optional): The efficacy of the Typhoid vaccine. Default is 0.82. + mode (str, optional): The mode of the intervention. Default is "Shedding". + constant_period (float, optional): The constant period of the waning effect in days. Default is 0. + decay_constant (float, optional): The decay time constant for the waning effect. Default is 6935.0. + start_day (int, optional): The day on which the intervention starts. Default is 1. + coverage (float, optional): Demographic coverage of the intervention. Default is 1.0. + node_ids (list, optional): List of node IDs where the intervention is applied. Default is None. + property_restrictions_list (list, optional): List of property restrictions for the intervention. Default is an empty list. + co_event (None, optional): Expansion slot for future use. + + Returns: + ScheduledCampaignEvent: An instance of a scheduled campaign event with the TyphoidVaccine intervention. + """ iv = new_intervention( camp, efficacy=efficacy, mode=mode, constant_period=constant_period, decay_constant=decay_constant ) From 1e51ba21dd00621c3ba39fa4a75163993ed31c18 Mon Sep 17 00:00:00 2001 From: Jonathan Bloedow Date: Thu, 28 Sep 2023 07:57:15 -0700 Subject: [PATCH 22/28] Changed some remaining malaria references (from template) to typhiod. --- docs/conf.py | 14 +++++++------- docs/index.rst | 6 +++--- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/docs/conf.py b/docs/conf.py index 87daa25..bf7f837 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -29,7 +29,7 @@ else: subprocess.check_output(["make.bat", "generate-api"], cwd=os.path.dirname(os.path.abspath(__file__))) -# Rename "emodpy-malaria" to "API reference" +# Rename "emodpy-typhoid" to "API reference" filename = 'modules.rst' # This must match the Makefile with open(filename) as f: # Read existing file lines = f.readlines() @@ -310,7 +310,7 @@ # html_search_scorer = 'scorer.js' # Output file base name for HTML help builder. -htmlhelp_basename = 'emodpy-malaria' +htmlhelp_basename = 'emodpy-typhoid' # -- Options for LaTeX output --------------------------------------------- @@ -336,7 +336,7 @@ # (source start file, target name, title, # author, documentclass [howto, manual, or own class]). latex_documents = [ - (master_doc, 'emodpy-malaria-docs.tex', u'emodpy-malaria', + (master_doc, 'emodpy-typhoid-docs.tex', u'emodpy-typhoid', u'Institute for Disease Modeling', 'manual'), ] @@ -378,7 +378,7 @@ # One entry per manual page. List of tuples # (source start file, name, description, authors, manual section). man_pages = [ - (master_doc, 'emodpy-malaria-docs', u'emodpy-malaria', + (master_doc, 'emodpy-typhoid-docs', u'emodpy-typhoid', [author], 1) ] @@ -392,8 +392,8 @@ # (source start file, target name, title, author, # dir menu entry, description, category) texinfo_documents = [ - (master_doc, 'emodpy-malaria-docs', u'emodpy-malaria', - author, 'Institute for Disease Modeling', 'How to use emodpy for malaria simulations.', + (master_doc, 'emodpy-typhoid-docs', u'emodpy-typhoid', + author, 'Institute for Disease Modeling', 'How to use emodpy for typhoid simulations.', 'Miscellaneous'), ] @@ -420,6 +420,6 @@ 'emod_api': ('https://docs.idmod.org/projects/emod-api/en/latest/', None), 'emodpy': ('https://docs.idmod.org/projects/emodpy/en/latest/', None), 'idmtools': ('https://docs.idmod.org/projects/idmtools/en/latest/', None), - 'emod-malaria': ('https://docs.idmod.org/projects/emod-malaria/en/latest/', None), + 'emod-typhoid': ('https://docs.idmod.org/projects/emod-typhoid/en/latest/', None), 'pycomps': ('https://docs.idmod.org/projects/pycomps/en/latest/', None) } \ No newline at end of file diff --git a/docs/index.rst b/docs/index.rst index c2faa97..677e143 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -3,13 +3,13 @@ ============================== |EMODPY_typhoid| is a collection of Python scripts and utilities created to -streamline user interactions with |EMOD_s| and |IT_s| for modeling malaria. +streamline user interactions with |EMOD_s| and |IT_s| for modeling typhoid. Much of the functionality is inherited from the :doc:`emod_api:emod_api` and :doc:`emodpy:emodpy`. Additional information about how to use |IT_s| can be found in -:doc:`idmtools:index`. Additional information about |EMOD_s| malaria -parameters can be found in :doc:`emod-malaria:parameter-overview`. +:doc:`idmtools:index`. Additional information about |EMOD_s| typhoid +parameters can be found in :doc:`emod-typhoid:parameter-overview`. See :doc:`idmtools:index` for a diagram showing how |IT_s| and each of the related packages are used in an end-to-end workflow using |EMOD_s| as the From 8578161d78d53159f53a8447778423094f921871 Mon Sep 17 00:00:00 2001 From: Jonathan Bloedow Date: Thu, 28 Sep 2023 08:07:32 -0700 Subject: [PATCH 23/28] Changed some remaining malaria references (from template) to typhiod. --- docs/_templates/breadcrumbs.html | 4 ++-- docs/_templates/footer.html | 4 ++-- docs/variables.txt | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/_templates/breadcrumbs.html b/docs/_templates/breadcrumbs.html index 391b9d0..fb68032 100644 --- a/docs/_templates/breadcrumbs.html +++ b/docs/_templates/breadcrumbs.html @@ -1,9 +1,9 @@ {% extends '!breadcrumbs.html' %} {% block breadcrumbs %}
  • IDM docs »
  • -
  • emodpy-malaria »
  • +
  • emodpy-typhoid »
  • {% for doc in parents %}
  • {{ doc.title }} »
  • {% endfor %}
  • {{ title }}
  • -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/docs/_templates/footer.html b/docs/_templates/footer.html index d93abae..ff9a591 100644 --- a/docs/_templates/footer.html +++ b/docs/_templates/footer.html @@ -1,8 +1,8 @@ {% extends '!footer.html' %} {% block extrafooter %} -

    emodpy-malaria is licensed under the Creative Commons +

    emodpy-typhoid is licensed under the Creative Commons Attribution-ShareAlike 4.0 International License.

    Send documentation feedback to feedback@idmod.org

    Privacy and Cookies Notice   |    Terms of Use

    -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/docs/variables.txt b/docs/variables.txt index 83678f9..49e015a 100644 --- a/docs/variables.txt +++ b/docs/variables.txt @@ -16,7 +16,7 @@ .. |IDM_l| replace:: Institute for Disease Modeling (IDM) .. |EMODPY_s| replace:: emodpy -.. |EMODPY_typhoid| replace:: typhoid +.. |EMODPY_typhoid| replace:: emodpy-typhoid .. |emod_api| replace:: emod-api .. |IDM_s| replace:: IDM .. |EMOD_l| replace:: Epidemiological MODeling software (EMOD) From 66b3208cdbc404ef1b6baecab157d5916409c0a4 Mon Sep 17 00:00:00 2001 From: Jonathan Bloedow Date: Thu, 28 Sep 2023 08:19:20 -0700 Subject: [PATCH 24/28] More whitespace for sphinx/RTD/etc. --- emodpy_typhoid/interventions/typhoid_vaccine.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/emodpy_typhoid/interventions/typhoid_vaccine.py b/emodpy_typhoid/interventions/typhoid_vaccine.py index 08c7880..73f0a5f 100644 --- a/emodpy_typhoid/interventions/typhoid_vaccine.py +++ b/emodpy_typhoid/interventions/typhoid_vaccine.py @@ -44,6 +44,7 @@ def new_triggered_intervention( ): """ Create a new triggered TyphoidVaccine intervention based on specified parameters. + Args: camp (Camp): The camp to which the intervention is applied. efficacy (float, optional): The efficacy of the Typhoid vaccine. Default is 0.82. @@ -80,6 +81,7 @@ def new_scheduled_intervention( ): """ Create a new scheduled TyphoidVaccine intervention based on specified parameters. + Args: camp (Camp): The camp to which the intervention is applied. efficacy (float, optional): The efficacy of the Typhoid vaccine. Default is 0.82. From 84f165515c64f5727f5f38baab7a4f72e0ac55fb Mon Sep 17 00:00:00 2001 From: Jonathan Bloedow Date: Thu, 28 Sep 2023 08:20:24 -0700 Subject: [PATCH 25/28] Less whitespace for sphinx/RTD/etc. --- emodpy_typhoid/interventions/typhoid_vaccine.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/emodpy_typhoid/interventions/typhoid_vaccine.py b/emodpy_typhoid/interventions/typhoid_vaccine.py index 73f0a5f..a2584a6 100644 --- a/emodpy_typhoid/interventions/typhoid_vaccine.py +++ b/emodpy_typhoid/interventions/typhoid_vaccine.py @@ -5,9 +5,7 @@ def new_intervention( camp, efficacy=0.82, mode="Shedding", constant_period=0, decay_constant=6935.0 ): """ - Create a new TyphoidVaccine intervention with specified parameters. If you use this function directly, - you'll need to distribute the intervention with a function like ScheduledCampaignEvent or TriggeredCampaignEvent - from emod_api.interventions.common. + Create a new TyphoidVaccine intervention with specified parameters. If you use this function directly, you'll need to distribute the intervention with a function like ScheduledCampaignEvent or TriggeredCampaignEvent from emod_api.interventions.common. Args: camp (Camp): The camp to which the intervention is applied. From 8fe80d22b2bbef4e43368c097af72cb5ca5fbafc Mon Sep 17 00:00:00 2001 From: Jonathan Bloedow Date: Thu, 28 Sep 2023 10:24:19 -0700 Subject: [PATCH 26/28] Added html_css_files entry to conf.py for docs. --- docs/conf.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/docs/conf.py b/docs/conf.py index bf7f837..8945d56 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -217,6 +217,10 @@ ] } html_js_files = ['show_block_by_os.js'] + +html_css_files = ['theme_overrides.css'] + + # Add any extra paths that contain custom files (such as robots.txt or # .htaccess) here, relative to this directory. These files are copied # directly to the root of the docs. @@ -422,4 +426,4 @@ 'idmtools': ('https://docs.idmod.org/projects/idmtools/en/latest/', None), 'emod-typhoid': ('https://docs.idmod.org/projects/emod-typhoid/en/latest/', None), 'pycomps': ('https://docs.idmod.org/projects/pycomps/en/latest/', None) - } \ No newline at end of file + } From efd6edd314cda5801082e194340abe5237d00d48 Mon Sep 17 00:00:00 2001 From: Jen Schripsema Date: Thu, 28 Sep 2023 12:53:46 -0600 Subject: [PATCH 27/28] updated Sphinx config to correctly apply css, corrected typos in .gitignore and demo docstring --- .gitignore | 2 +- docs/conf.py | 32 +++++++++++++------ .../demographics/TyphoidDemographics.py | 2 +- 3 files changed, 24 insertions(+), 12 deletions(-) diff --git a/.gitignore b/.gitignore index ffdfa61..785494c 100644 --- a/.gitignore +++ b/.gitignore @@ -70,7 +70,7 @@ instance/ # Sphinx documentation docs/_build/ -docs/emodpy-typhoid*.rst +docs/emodpy_typhoid*.rst docs/modules.rst # PyBuilder diff --git a/docs/conf.py b/docs/conf.py index 8945d56..df7d08e 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -59,10 +59,27 @@ 'sphinx_copybutton', 'sphinx.ext.intersphinx', 'sphinxext.remoteliteralinclude', - 'myst_parser', - 'sphinx_search.extension' + 'myst_parser', # source files written in MD or RST + 'sphinx_search.extension', # search across entire IDM docs domain + 'sphinx.ext.viewcode' # link to view source code ] +myst_enable_extensions = [ + "amsmath", + "attrs_inline", + "colon_fence", + "deflist", + "dollarmath", + "fieldlist", + "html_admonition", + "html_image", + "linkify", + "replacements", + "smartquotes", + "strikethrough", + "substitution", + "tasklist", +] plantuml = 'plantweb' autodoc_default_options = { @@ -208,18 +225,13 @@ # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, # so a file named "default.css" will overwrite the builtin "default.css". -html_static_path = ['_static'] -html_context = { - 'css_files': [ - '_static/theme_overrides.css', - '_static/copy_button.css' - ] -} -html_js_files = ['show_block_by_os.js'] +html_static_path = ['_static'] html_css_files = ['theme_overrides.css'] +html_js_files = ['show_block_by_os.js'] + # Add any extra paths that contain custom files (such as robots.txt or # .htaccess) here, relative to this directory. These files are copied diff --git a/emodpy_typhoid/demographics/TyphoidDemographics.py b/emodpy_typhoid/demographics/TyphoidDemographics.py index b3789ca..89edbf2 100644 --- a/emodpy_typhoid/demographics/TyphoidDemographics.py +++ b/emodpy_typhoid/demographics/TyphoidDemographics.py @@ -81,7 +81,7 @@ def from_csv( pop_filename_in, site="No_Site", min_node_pop = 0 ): site: A string to identify the country, village, or trial site. Returns: - A :py:class:`~emodpy_malaria.demographics.MalariaDemographics` instance. + A :py:class:`~emodpy_typhoid.demographics.MalariaDemographics` instance. """ typhoid_demog = Demog.from_csv( pop_filename_in ) nodes = [] From 2b264a4e9948cc908f0b41654029c2a872d42e31 Mon Sep 17 00:00:00 2001 From: Jonathan Bloedow Date: Mon, 2 Oct 2023 07:08:55 -0700 Subject: [PATCH 28/28] Fixed bug caught by Sharon where new_intervention_as_file wasnt passing start_day by name and thus correctly. --- emodpy_typhoid/interventions/typhoid_vaccine.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/emodpy_typhoid/interventions/typhoid_vaccine.py b/emodpy_typhoid/interventions/typhoid_vaccine.py index a2584a6..8c2414a 100644 --- a/emodpy_typhoid/interventions/typhoid_vaccine.py +++ b/emodpy_typhoid/interventions/typhoid_vaccine.py @@ -105,7 +105,7 @@ def new_scheduled_intervention( def new_intervention_as_file( camp, start_day, filename=None ): import emod_api.campaign as camp - camp.add( new_triggered_intervention( camp, start_day ), first=True ) + camp.add( new_triggered_intervention( camp, start_day=start_day ), first=True ) if filename is None: filename = "TyphoidVaccine.json" camp.save( filename )