From ed56c0a74f0e29f09f6e887ba2258d40dbc57376 Mon Sep 17 00:00:00 2001 From: Piranias Date: Tue, 25 May 2021 16:20:41 +0200 Subject: [PATCH 01/37] allow own weather data --- pvcompare/main.py | 30 ++++++++++++++++++++---------- 1 file changed, 20 insertions(+), 10 deletions(-) diff --git a/pvcompare/main.py b/pvcompare/main.py index 931700a9..35c550e0 100644 --- a/pvcompare/main.py +++ b/pvcompare/main.py @@ -36,6 +36,7 @@ def apply_pvcompare( overwrite_grid_parameters=True, overwrite_pv_parameters=True, overwrite_heat_parameters=True, + add_weather_file=None ): """ Runs the main functionalities of pvcompare. @@ -92,6 +93,10 @@ def apply_pvcompare( overwritten with calculated time series of COP and existing fixed thermal losses absolute and relative will be overwritten with calculated time series of fixed thermal losses relative and absolute. + add_weather_data: str + Path to hourly csv weather time series with columns: [time, latitude, longitude + ,ghi, wind_speed, temp_air, precipitable_water, dni, dhi] + Default: None. If None, the ERA5 data is used instead. Returns ------- @@ -130,16 +135,20 @@ def apply_pvcompare( user_inputs_mvs_directory=user_inputs_mvs_directory, ) - # check if weather data already exists - weather_file = os.path.join( - static_inputs_directory, f"weatherdata_{latitude}_{longitude}_{year}.csv" - ) - if os.path.isfile(weather_file): - weather = pd.read_csv(weather_file, index_col=0,) + if add_weather_file is not None: + weather = pd.read_csv(add_weather_file, index_col=0,) else: - # if era5 import works this line can be used - weather = era5.load_era5_weatherdata(lat=latitude, lon=longitude, year=year) - weather.to_csv(weather_file) + # check if weather data already exists + weather_file = os.path.join( + static_inputs_directory, f"weatherdata_{latitude}_{longitude}_{year}.csv" + ) + if os.path.isfile(weather_file): + weather = pd.read_csv(weather_file, index_col=0,) + else: + # download ERA5 weather data + weather = era5.load_era5_weatherdata(lat=latitude, lon=longitude, year=year) + # save to csv + weather.to_csv(weather_file) # add datetimeindex weather.index = pd.to_datetime(weather.index) @@ -276,7 +285,7 @@ def apply_mvs( year = 2018 storeys = 5 country = "Spain" - scenario_name = "Scenario_B2" + scenario_name = "Scenario_TEST_weatherdata" apply_pvcompare( latitude=latitude, @@ -284,6 +293,7 @@ def apply_mvs( year=year, storeys=storeys, country=country, + add_weather_file="/home/inia/Dokumente/greco_env/pvcompare/pvcompare/data/static_inputs/own_weatherdata.csv" ) # apply_mvs( From 845bf11f14b6c4888c95970d192c6ce7d6301f41 Mon Sep 17 00:00:00 2001 From: Piranias Date: Tue, 25 May 2021 16:58:50 +0200 Subject: [PATCH 02/37] add_weather_file and add_sam_si_module --- pvcompare/main.py | 8 ++++++-- pvcompare/pv_feedin.py | 18 +++++++++++++----- 2 files changed, 19 insertions(+), 7 deletions(-) diff --git a/pvcompare/main.py b/pvcompare/main.py index 35c550e0..4a72d447 100644 --- a/pvcompare/main.py +++ b/pvcompare/main.py @@ -36,7 +36,8 @@ def apply_pvcompare( overwrite_grid_parameters=True, overwrite_pv_parameters=True, overwrite_heat_parameters=True, - add_weather_file=None + add_weather_file=None, + add_sam_si_module={"cecmod":'Canadian_Solar_Inc__CS5P_220M'} ): """ Runs the main functionalities of pvcompare. @@ -97,6 +98,9 @@ def apply_pvcompare( Path to hourly csv weather time series with columns: [time, latitude, longitude ,ghi, wind_speed, temp_air, precipitable_water, dni, dhi] Default: None. If None, the ERA5 data is used instead. + add_sam_si_module: dict + with library (’CECMod’ or "SandiaMod") as key and module name + (e.g. 'Canadian_Solar_Inc__CS5P_220M') as value. Returns ------- @@ -171,6 +175,7 @@ def apply_pvcompare( user_inputs_mvs_directory=user_inputs_mvs_directory, year=year, normalization=True, + add_sam_si_module=add_sam_si_module ) # add sector coupling in case heat pump or chiller exists in energyConversion.csv @@ -293,7 +298,6 @@ def apply_mvs( year=year, storeys=storeys, country=country, - add_weather_file="/home/inia/Dokumente/greco_env/pvcompare/pvcompare/data/static_inputs/own_weatherdata.csv" ) # apply_mvs( diff --git a/pvcompare/pv_feedin.py b/pvcompare/pv_feedin.py index 66f6cf1a..c7ea7bea 100644 --- a/pvcompare/pv_feedin.py +++ b/pvcompare/pv_feedin.py @@ -52,6 +52,7 @@ def create_pv_components( user_inputs_mvs_directory=None, psi_type="Chen", normalization=True, + add_sam_si_module=None ): """ Creates feed-in time series for all surface types in `pv_setup` or 'pv_setup.csv'. @@ -165,6 +166,7 @@ def create_pv_components( surface_azimuth=j, surface_tilt=k, normalization=normalization, + add_sam_si_module=add_sam_si_module ) elif row["technology"] == "cpv": time_series = create_cpv_time_series( @@ -294,7 +296,7 @@ def get_optimal_pv_angle(lat): return round(lat - 15) -def set_up_system(technology, surface_azimuth, surface_tilt): +def set_up_system(technology, surface_azimuth, surface_tilt, add_sam_si_module=None): """ Sets up pvlibPVSystems. @@ -320,8 +322,14 @@ def set_up_system(technology, surface_azimuth, surface_tilt): if technology == "si": - sandia_modules = pvlib.pvsystem.retrieve_sam("cecmod") - sandia_module = sandia_modules["Aleo_Solar_S59y280"] + if add_sam_si_module is None: + library = "cecmod" + module = "Aleo_Solar_S59y280" + else: + library, module = next(iter(add_sam_si_module.items())) + sandia_modules = pvlib.pvsystem.retrieve_sam(library) + sandia_module = sandia_modules[module] + # note that the inverter is not accounted for in the calculation of PV timeseries cec_inverters = pvlib.pvsystem.retrieve_sam("cecinverter") cec_inverter = cec_inverters["ABB__MICRO_0_25_I_OUTD_US_208__208V_"] system = PVSystem( @@ -366,7 +374,7 @@ def set_up_system(technology, surface_azimuth, surface_tilt): def create_si_time_series( - lat, lon, weather, surface_azimuth, surface_tilt, normalization + lat, lon, weather, surface_azimuth, surface_tilt, normalization, add_sam_si_module ): """ @@ -399,7 +407,7 @@ def create_si_time_series( """ system, module_parameters = set_up_system( - technology="si", surface_azimuth=surface_azimuth, surface_tilt=surface_tilt + technology="si", surface_azimuth=surface_azimuth, surface_tilt=surface_tilt, add_sam_si_module=add_sam_si_module ) location = Location(latitude=lat, longitude=lon) From 15baa84ed236ca6a5648a93627626c7b902c7cff Mon Sep 17 00:00:00 2001 From: Piranias Date: Tue, 25 May 2021 17:17:10 +0200 Subject: [PATCH 03/37] add_demand_timeseries --- pvcompare/demand.py | 88 +++++++++++++++++++++++++++++++++------------ 1 file changed, 65 insertions(+), 23 deletions(-) diff --git a/pvcompare/demand.py b/pvcompare/demand.py index ed26f6f5..2d03c552 100644 --- a/pvcompare/demand.py +++ b/pvcompare/demand.py @@ -55,6 +55,8 @@ def calculate_load_profiles( static_inputs_directory=None, user_inputs_pvcompare_directory=None, user_inputs_mvs_directory=None, + add_electricity_demand=None, + add_heat_demand= None ): """ Calculates electricity and heat load profiles and saves them to csv. @@ -81,6 +83,12 @@ def calculate_load_profiles( Default: None. user_inputs_mvs_directory : str or None Path to mvs input directory. If None: DEFAULT_USER_INPUTS_MVS_DIRECTORY. Default: None. + add_electricity_demand: str + Path to precalculated hourly electricity demand time series for one year (or the same period + of a precalculated PV timeseries) + add_heat_demand: str + Path to precalculated hourly heat demand time series for one year (or the same period + of a precalculated PV timeseries) Returns ------ @@ -105,28 +113,62 @@ def calculate_load_profiles( for column in energyConsumption: if column != "unit": if energyConsumption.at["energyVector", column] == "Heat": - calculate_heat_demand( - country=country, - lat=lat, - lon=lon, - storeys=storeys, - year=year, - weather=weather, - static_inputs_directory=static_inputs_directory, - user_inputs_pvcompare_directory=user_inputs_pvcompare_directory, - user_inputs_mvs_directory=user_inputs_mvs_directory, - column=column, - ) + + if add_heat_demand is not None: + #check if file exists + if os.path.isfile(add_heat_demand): + # save the file name of the time series + # mvs_inputs/elements/csv/energyProduction.csv + check_inputs.add_file_name_to_energy_consumption_file( + column=column, + ts_filename=add_heat_demand, + user_inputs_mvs_directory=user_inputs_mvs_directory, + ) + else: + logging.warning("The heat demand time series" + " you have entered does not exist. It is" + " thus calculated according to the default" + " method of pvcompare.") + else: + calculate_heat_demand( + country=country, + lat=lat, + lon=lon, + storeys=storeys, + year=year, + weather=weather, + static_inputs_directory=static_inputs_directory, + user_inputs_pvcompare_directory=user_inputs_pvcompare_directory, + user_inputs_mvs_directory=user_inputs_mvs_directory, + column=column, + ) elif energyConsumption.at["energyVector", column] == "Electricity": - calculate_power_demand( - country=country, - storeys=storeys, - year=year, - static_inputs_directory=static_inputs_directory, - user_inputs_pvcompare_directory=user_inputs_pvcompare_directory, - user_inputs_mvs_directory=user_inputs_mvs_directory, - column=column, - ) + + if add_electricity_demand is not None: + + if os.path.isfile(add_electricity_demand): + # save the file name of the time series + # mvs_inputs/elements/csv/energyProduction.csv + check_inputs.add_file_name_to_energy_consumption_file( + column=column, + ts_filename=add_electricity_demand, + user_inputs_mvs_directory=user_inputs_mvs_directory, + ) + else: + logging.warning("The electricity demand time series" + " you have entered does not exist. It is" + " thus calculated according to the default" + " method of pvcompare.") + else: + calculate_power_demand( + country=country, + storeys=storeys, + year=year, + static_inputs_directory=static_inputs_directory, + user_inputs_pvcompare_directory=user_inputs_pvcompare_directory, + user_inputs_mvs_directory=user_inputs_mvs_directory, + column=column, + ) else: logging.warning( "the given energyVector in energyConsumption.csv " @@ -300,7 +342,7 @@ def calculate_power_demand( filename = os.path.join(timeseries_directory, el_demand_csv) shifted_elec_demand.to_csv(filename, index=False) - # save the file name of the time series and the nominal value to + # save the file name of the time series # mvs_inputs/elements/csv/energyProduction.csv check_inputs.add_file_name_to_energy_consumption_file( column=column, @@ -502,7 +544,7 @@ def calculate_heat_demand( filename = os.path.join(timeseries_directory, h_demand_csv) shifted_heat_demand.to_csv(filename, index=False) - # save the file name of the time series and the nominal value to + # save the file name of the time series # mvs_inputs/elements/csv/energyProduction.csv check_inputs.add_file_name_to_energy_consumption_file( column=column, From b23e4cf300b3cfc02f615779134fbde266f24425 Mon Sep 17 00:00:00 2001 From: Piranias Date: Tue, 25 May 2021 17:17:25 +0200 Subject: [PATCH 04/37] add_demand_timeseries --- pvcompare/main.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/pvcompare/main.py b/pvcompare/main.py index 4a72d447..55743a5c 100644 --- a/pvcompare/main.py +++ b/pvcompare/main.py @@ -37,7 +37,9 @@ def apply_pvcompare( overwrite_pv_parameters=True, overwrite_heat_parameters=True, add_weather_file=None, - add_sam_si_module={"cecmod":'Canadian_Solar_Inc__CS5P_220M'} + add_sam_si_module={"cecmod":'Canadian_Solar_Inc__CS5P_220M'}, + add_electricity_demand="/home/inia/Dokumente/greco_env/pvcompare/pvcompare/data/user_inputs/mvs_inputs/time_series/electricity_load_2017_Spain_5_own.csv", + add_heat_demand=None, ): """ Runs the main functionalities of pvcompare. @@ -101,6 +103,12 @@ def apply_pvcompare( add_sam_si_module: dict with library (’CECMod’ or "SandiaMod") as key and module name (e.g. 'Canadian_Solar_Inc__CS5P_220M') as value. + add_electricity_demand: str + Path to precalculated hourly electricity demand time series for one year (or the same period + of a precalculated PV timeseries) + add_heat_demand: str + Path to precalculated hourly heat demand time series for one year (or the same period + of a precalculated PV timeseries) Returns ------- @@ -199,6 +207,8 @@ def apply_pvcompare( user_inputs_pvcompare_directory=user_inputs_pvcompare_directory, user_inputs_mvs_directory=user_inputs_mvs_directory, weather=weather, + add_electricity_demand= add_electricity_demand, + add_heat_demand=add_heat_demand ) stratified_thermal_storage.add_strat_tes( From 49b5dd60f7ed13726a7a0bbbb2713351ec3e8a0c Mon Sep 17 00:00:00 2001 From: Piranias Date: Tue, 25 May 2021 17:20:00 +0200 Subject: [PATCH 05/37] add docstrings for add_sam_si_module --- pvcompare/main.py | 8 ++++---- pvcompare/pv_feedin.py | 10 +++++++++- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/pvcompare/main.py b/pvcompare/main.py index 55743a5c..f823c7da 100644 --- a/pvcompare/main.py +++ b/pvcompare/main.py @@ -37,8 +37,8 @@ def apply_pvcompare( overwrite_pv_parameters=True, overwrite_heat_parameters=True, add_weather_file=None, - add_sam_si_module={"cecmod":'Canadian_Solar_Inc__CS5P_220M'}, - add_electricity_demand="/home/inia/Dokumente/greco_env/pvcompare/pvcompare/data/user_inputs/mvs_inputs/time_series/electricity_load_2017_Spain_5_own.csv", + add_sam_si_module=None, + add_electricity_demand=None, add_heat_demand=None, ): """ @@ -101,8 +101,8 @@ def apply_pvcompare( ,ghi, wind_speed, temp_air, precipitable_water, dni, dhi] Default: None. If None, the ERA5 data is used instead. add_sam_si_module: dict - with library (’CECMod’ or "SandiaMod") as key and module name - (e.g. 'Canadian_Solar_Inc__CS5P_220M') as value. + with library (’CECMod’ or "SandiaMod") as key and module name as value. + E.g. {"cecmod":'Canadian_Solar_Inc__CS5P_220M'} add_electricity_demand: str Path to precalculated hourly electricity demand time series for one year (or the same period of a precalculated PV timeseries) diff --git a/pvcompare/pv_feedin.py b/pvcompare/pv_feedin.py index c7ea7bea..ff7c93d1 100644 --- a/pvcompare/pv_feedin.py +++ b/pvcompare/pv_feedin.py @@ -97,7 +97,9 @@ def create_pv_components( normalization: bool If True: Time series is normalized. Otherwise absolute time series is returned. Default: True. - + add_sam_si_module: dict + with library (’CECMod’ or "SandiaMod") as key and module name as value. + E.g. {"cecmod":'Canadian_Solar_Inc__CS5P_220M'} Returns ------- @@ -313,6 +315,9 @@ def set_up_system(technology, surface_azimuth, surface_tilt, add_sam_si_module=N surface azimuth of the module surface_tilt: float surface tilt of the module + add_sam_si_module: dict + with library (’CECMod’ or "SandiaMod") as key and module name as value. + E.g. {"cecmod":'Canadian_Solar_Inc__CS5P_220M'} Returns ------- @@ -400,6 +405,9 @@ def create_si_time_series( normalization: bool If True: Time series is normalized. Otherwise absolute time series is returned. + add_sam_si_module: dict + with library (’CECMod’ or "SandiaMod") as key and module name as value. + E.g. {"cecmod":'Canadian_Solar_Inc__CS5P_220M'} Returns ------- From c54e199a65063a71c33598751585d85122274042 Mon Sep 17 00:00:00 2001 From: Piranias Date: Tue, 25 May 2021 17:24:57 +0200 Subject: [PATCH 06/37] add more description for main function --- pvcompare/main.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pvcompare/main.py b/pvcompare/main.py index f823c7da..36ad2dee 100644 --- a/pvcompare/main.py +++ b/pvcompare/main.py @@ -102,13 +102,19 @@ def apply_pvcompare( Default: None. If None, the ERA5 data is used instead. add_sam_si_module: dict with library (’CECMod’ or "SandiaMod") as key and module name as value. - E.g. {"cecmod":'Canadian_Solar_Inc__CS5P_220M'} + E.g. {"cecmod":'Canadian_Solar_Inc__CS5P_220M'}. + Note that the SI module is only considered if there is the technology "SI" in + 'user_inputs/mvs_inputs/pvcompare_inputs/pv_setup.csv' add_electricity_demand: str Path to precalculated hourly electricity demand time series for one year (or the same period of a precalculated PV timeseries) + Note that that the demand is only considered is a column "Electricity demand" is added to + 'user_inputs/mvs_inputs/csv_elements/energyConsumption.csv' add_heat_demand: str Path to precalculated hourly heat demand time series for one year (or the same period of a precalculated PV timeseries) + Note that that the demand is only considered is a column "Heat demand" is added to + 'user_inputs/mvs_inputs/csv_elements/energyConsumption.csv' Returns ------- From cde4945fe8373405c9df10fb51a08f501e497b79 Mon Sep 17 00:00:00 2001 From: Piranias Date: Tue, 25 May 2021 18:50:28 +0200 Subject: [PATCH 07/37] allow add pv timeseries --- pvcompare/main.py | 78 ++++++++++++++++++++++++++++-------------- pvcompare/pv_feedin.py | 36 ++++++++++++++++++- 2 files changed, 88 insertions(+), 26 deletions(-) diff --git a/pvcompare/main.py b/pvcompare/main.py index 36ad2dee..bb84061d 100644 --- a/pvcompare/main.py +++ b/pvcompare/main.py @@ -40,6 +40,7 @@ def apply_pvcompare( add_sam_si_module=None, add_electricity_demand=None, add_heat_demand=None, + add_pv_timeseries=None, ): """ Runs the main functionalities of pvcompare. @@ -96,25 +97,37 @@ def apply_pvcompare( overwritten with calculated time series of COP and existing fixed thermal losses absolute and relative will be overwritten with calculated time series of fixed thermal losses relative and absolute. - add_weather_data: str + add_weather_data: str or None Path to hourly csv weather time series with columns: [time, latitude, longitude ,ghi, wind_speed, temp_air, precipitable_water, dni, dhi] Default: None. If None, the ERA5 data is used instead. - add_sam_si_module: dict - with library (’CECMod’ or "SandiaMod") as key and module name as value. + add_sam_si_module: dict or None + Dictionary with library (’CECMod’ or "SandiaMod") as key and module name as value. E.g. {"cecmod":'Canadian_Solar_Inc__CS5P_220M'}. Note that the SI module is only considered if there is the technology "SI" in 'user_inputs/mvs_inputs/pvcompare_inputs/pv_setup.csv' - add_electricity_demand: str + add_electricity_demand: str or None Path to precalculated hourly electricity demand time series for one year (or the same period of a precalculated PV timeseries) Note that that the demand is only considered is a column "Electricity demand" is added to 'user_inputs/mvs_inputs/csv_elements/energyConsumption.csv' - add_heat_demand: str + add_heat_demand: str or None Path to precalculated hourly heat demand time series for one year (or the same period of a precalculated PV timeseries) Note that that the demand is only considered is a column "Heat demand" is added to 'user_inputs/mvs_inputs/csv_elements/energyConsumption.csv' + add_pv_timeseries: dict or None + Dictionary with {"PV1" : ["filename": >path_to_time_series< , "module_size": >module_size in m²<, + "module_peak_power": >peak power of the module in kWp<, "surface_type": >surface_type for PV installation<], + "PV2" : [...], ...}. If you want to consider more PV time series, more PV keys can be added. + The PV time series itself needs to be be an normalized hourly time series in kW/kWp + (normalized by the peak power of the module). The facades can be one of: [ + "flat_roof", "gable_roof", "south_facade", "east_facade", "west_facade"]. + Note that you need to add more specific PV parameters of your module (name, costs, lifetime etc.) in + 'user_inputs/mvs_inputs/csv_elements/energyProduction.csv'. The columns in energyProduction.csv + should be named "PV"+ key (e.g. "PV SI1") + When providing your own time series, overwrite_pv_parameters should be + set to false. When add_pv_timeseries is used, the pv_setup.csv is disregarded. Returns ------- @@ -170,27 +183,35 @@ def apply_pvcompare( # add datetimeindex weather.index = pd.to_datetime(weather.index) - # check energyProduction.csv file for the correct pv technology - check_inputs.overwrite_mvs_energy_production_file( - pv_setup=pv_setup, + # check if add_pv_time_series is True + if add_pv_timeseries is not None: + pv_feedin.add_pv_timeseries(add_pv_timeseries=add_pv_timeseries, pv_setup=pv_setup, storeys= storeys, user_inputs_mvs_directory=user_inputs_mvs_directory, - user_inputs_pvcompare_directory=user_inputs_pvcompare_directory, - collections_mvs_inputs_directory=collections_mvs_inputs_directory, - overwrite_pv_parameters=overwrite_pv_parameters, - ) - pv_feedin.create_pv_components( - lat=latitude, - lon=longitude, - weather=weather, - storeys=storeys, - pv_setup=pv_setup, - plot=plot, - user_inputs_pvcompare_directory=user_inputs_pvcompare_directory, - user_inputs_mvs_directory=user_inputs_mvs_directory, - year=year, - normalization=True, - add_sam_si_module=add_sam_si_module - ) + user_inputs_pvcompare_directory=user_inputs_pvcompare_directory) + + else: + # check energyProduction.csv file for the correct pv technology + check_inputs.overwrite_mvs_energy_production_file( + pv_setup=pv_setup, + user_inputs_mvs_directory=user_inputs_mvs_directory, + user_inputs_pvcompare_directory=user_inputs_pvcompare_directory, + collections_mvs_inputs_directory=collections_mvs_inputs_directory, + overwrite_pv_parameters=overwrite_pv_parameters, + ) + + pv_feedin.create_pv_components( + lat=latitude, + lon=longitude, + weather=weather, + storeys=storeys, + pv_setup=pv_setup, + plot=plot, + user_inputs_pvcompare_directory=user_inputs_pvcompare_directory, + user_inputs_mvs_directory=user_inputs_mvs_directory, + year=year, + normalization=True, + add_sam_si_module=add_sam_si_module + ) # add sector coupling in case heat pump or chiller exists in energyConversion.csv # note: chiller was not tested, yet. @@ -314,6 +335,13 @@ def apply_mvs( year=year, storeys=storeys, country=country, + add_pv_timeseries={"PV1": {"filename":"/home/inia/Dokumente/greco_env/pvcompare/pvcompare/data/user_inputs/mvs_inputs/time_series/cpv_90_0_2013_40.416775_-3.70379.csv", + "module_size": 1, "module_peak_power":50, "surface_type" : "flat_roof"}, + "PV2": { + "filename": "/home/inia/Dokumente/greco_env/pvcompare/pvcompare/data/user_inputs/mvs_inputs/time_series/cpv_90_0_2013_40.416775_-3.70379.csv", + "module_size": 1, "module_peak_power": 50, + "surface_type": "flat_roof"} + } ) # apply_mvs( diff --git a/pvcompare/pv_feedin.py b/pvcompare/pv_feedin.py index ff7c93d1..a454b0b1 100644 --- a/pvcompare/pv_feedin.py +++ b/pvcompare/pv_feedin.py @@ -117,7 +117,7 @@ def create_pv_components( data_path = os.path.join(user_inputs_pvcompare_directory, "pv_setup.csv") pv_setup = pd.read_csv(data_path) - logging.info("setup conditions successfully loaded.") + logging.info("Pv setup conditions successfully loaded.") # check if all required columns are in pv_setup if not all( @@ -711,3 +711,37 @@ def get_peak(technology, module_parameters_1, module_parameters_2): - (module_parameters_1.p_mp + module_parameters_2.p_mp) * 0.1 ) return peak + +def add_pv_timeseries(add_pv_timeseries, pv_setup, storeys, + user_inputs_mvs_directory, + user_inputs_pvcompare_directory): + """ + + :return: + """ + + for key in add_pv_timeseries.keys(): + # check if PV timeseries exists + if not os.path.isfile(add_pv_timeseries[key]["filename"]): + logging.error("The PV time series you have specified does not exist. " + "Please check your input or set 'add_pv_timeseries' to None " + "in order to use the default pvcompare methods.") + return + pv_timeseries=pd.read_csv(add_pv_timeseries[key]["filename"], index_col=0, header=None) + # add "evaluated_period" to simulation_settings.csv + check_inputs.add_evaluated_period_to_simulation_settings( + time_series=pv_timeseries, user_inputs_mvs_directory=user_inputs_mvs_directory + ) + area = area_potential.calculate_area_potential( + storeys, + user_inputs_pvcompare_directory, + surface_type=add_pv_timeseries[key]["surface_type"], + ) + nominal_value = round((area / add_pv_timeseries[key]["module_size"]) * add_pv_timeseries[key]["module_peak_power"]) + + check_inputs.add_parameters_to_energy_production_file( + technology=key, + ts_filename=add_pv_timeseries[key]["filename"], + nominal_value=nominal_value, + user_inputs_mvs_directory=user_inputs_mvs_directory, + ) \ No newline at end of file From 751725c4945bcff87d5891eaa3f33c308eac8013 Mon Sep 17 00:00:00 2001 From: Piranias Date: Tue, 25 May 2021 18:53:17 +0200 Subject: [PATCH 08/37] add docstring to new function --- pvcompare/pv_feedin.py | 33 ++++++++++++++++++++++++++++++--- 1 file changed, 30 insertions(+), 3 deletions(-) diff --git a/pvcompare/pv_feedin.py b/pvcompare/pv_feedin.py index a454b0b1..dbbe6652 100644 --- a/pvcompare/pv_feedin.py +++ b/pvcompare/pv_feedin.py @@ -712,12 +712,39 @@ def get_peak(technology, module_parameters_1, module_parameters_2): ) return peak -def add_pv_timeseries(add_pv_timeseries, pv_setup, storeys, +def add_pv_timeseries(add_pv_timeseries, storeys, user_inputs_mvs_directory, user_inputs_pvcompare_directory): """ - - :return: + This function calculates the maximal capacity and inserts the time series filename + and the maximum capacity into 'user_inputs/mvs_inputs/csv_elements/energyProduction.csv'. + + Parameter + ---------- + add_pv_timeseries: dict or None + Dictionary with {"PV1" : ["filename": >path_to_time_series< , "module_size": >module_size in m²<, + "module_peak_power": >peak power of the module in kWp<, "surface_type": >surface_type for PV installation<], + "PV2" : [...], ...}. If you want to consider more PV time series, more PV keys can be added. + The PV time series itself needs to be be an normalized hourly time series in kW/kWp + (normalized by the peak power of the module). The facades can be one of: [ + "flat_roof", "gable_roof", "south_facade", "east_facade", "west_facade"]. + Note that you need to add more specific PV parameters of your module (name, costs, lifetime etc.) in + 'user_inputs/mvs_inputs/csv_elements/energyProduction.csv'. The columns in energyProduction.csv + should be named "PV"+ key (e.g. "PV SI1") + When providing your own time series, overwrite_pv_parameters should be + set to false. When add_pv_timeseries is used, the pv_setup.csv is disregarded. + storeys: int + number of storeys for which the demand is calculated. + user_inputs_mvs_directory: str or None + Directory of the mvs inputs; where 'csv_elements/' is located. If None, + `constants.DEFAULT_USER_INPUTS_MVS_DIRECTORY` is used as user_inputs_mvs_directory. + Default: None. + user_inputs_pvcompare_directory: str or None + If None, `constants.DEFAULT_USER_INPUTS_PVCOMPARE_DIRECTORY` is used + as user_inputs_pvcompare_directory. + Default: None. + :return: + None """ for key in add_pv_timeseries.keys(): From 892d9119b22e000001172ae01afe5e1693e16018 Mon Sep 17 00:00:00 2001 From: Piranias Date: Tue, 25 May 2021 19:00:32 +0200 Subject: [PATCH 09/37] add changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 48895a3a..63307de1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -30,6 +30,7 @@ Here is a template for new release sections - Add info on energy systems consisting of more than one node in RTD section "scope and limitations" (#293) - Added description of the implementation of the stratified thermal storage in pvcompare with a description of the possibilities modeling it (#291) - Dokumentation: Update on 'basic_usage', 'parameter description' and 'model assumptions' (#302) +- Usability: allow the user to provide their own weather data, demand time series, pv time series and SAM SI modules (#317) ### Changed - The inlet temperatures of the heat pump and the stratified thermal storage have been revised in the pvcompare input parameters, adapting them in order to fit typical temperatures of the heating system. Also the pvcompare input parameters of the stratified thermal storage have been revised (#272) From e5295d5f6a51cc73c2d5a6cac573d0cdd03e7347 Mon Sep 17 00:00:00 2001 From: Piranias Date: Tue, 25 May 2021 19:00:42 +0200 Subject: [PATCH 10/37] apply black --- pvcompare/demand.py | 24 ++++++++++++++---------- pvcompare/main.py | 37 ++++++++++++++++++++++++------------- pvcompare/pv_feedin.py | 41 ++++++++++++++++++++++++++++------------- 3 files changed, 66 insertions(+), 36 deletions(-) diff --git a/pvcompare/demand.py b/pvcompare/demand.py index 2d03c552..52557ada 100644 --- a/pvcompare/demand.py +++ b/pvcompare/demand.py @@ -56,7 +56,7 @@ def calculate_load_profiles( user_inputs_pvcompare_directory=None, user_inputs_mvs_directory=None, add_electricity_demand=None, - add_heat_demand= None + add_heat_demand=None, ): """ Calculates electricity and heat load profiles and saves them to csv. @@ -115,7 +115,7 @@ def calculate_load_profiles( if energyConsumption.at["energyVector", column] == "Heat": if add_heat_demand is not None: - #check if file exists + # check if file exists if os.path.isfile(add_heat_demand): # save the file name of the time series # mvs_inputs/elements/csv/energyProduction.csv @@ -125,10 +125,12 @@ def calculate_load_profiles( user_inputs_mvs_directory=user_inputs_mvs_directory, ) else: - logging.warning("The heat demand time series" - " you have entered does not exist. It is" - " thus calculated according to the default" - " method of pvcompare.") + logging.warning( + "The heat demand time series" + " you have entered does not exist. It is" + " thus calculated according to the default" + " method of pvcompare." + ) else: calculate_heat_demand( country=country, @@ -155,10 +157,12 @@ def calculate_load_profiles( user_inputs_mvs_directory=user_inputs_mvs_directory, ) else: - logging.warning("The electricity demand time series" - " you have entered does not exist. It is" - " thus calculated according to the default" - " method of pvcompare.") + logging.warning( + "The electricity demand time series" + " you have entered does not exist. It is" + " thus calculated according to the default" + " method of pvcompare." + ) else: calculate_power_demand( country=country, diff --git a/pvcompare/main.py b/pvcompare/main.py index bb84061d..7bbc70f8 100644 --- a/pvcompare/main.py +++ b/pvcompare/main.py @@ -185,9 +185,13 @@ def apply_pvcompare( # check if add_pv_time_series is True if add_pv_timeseries is not None: - pv_feedin.add_pv_timeseries(add_pv_timeseries=add_pv_timeseries, pv_setup=pv_setup, storeys= storeys, - user_inputs_mvs_directory=user_inputs_mvs_directory, - user_inputs_pvcompare_directory=user_inputs_pvcompare_directory) + pv_feedin.add_pv_timeseries( + add_pv_timeseries=add_pv_timeseries, + pv_setup=pv_setup, + storeys=storeys, + user_inputs_mvs_directory=user_inputs_mvs_directory, + user_inputs_pvcompare_directory=user_inputs_pvcompare_directory, + ) else: # check energyProduction.csv file for the correct pv technology @@ -210,7 +214,7 @@ def apply_pvcompare( user_inputs_mvs_directory=user_inputs_mvs_directory, year=year, normalization=True, - add_sam_si_module=add_sam_si_module + add_sam_si_module=add_sam_si_module, ) # add sector coupling in case heat pump or chiller exists in energyConversion.csv @@ -234,8 +238,8 @@ def apply_pvcompare( user_inputs_pvcompare_directory=user_inputs_pvcompare_directory, user_inputs_mvs_directory=user_inputs_mvs_directory, weather=weather, - add_electricity_demand= add_electricity_demand, - add_heat_demand=add_heat_demand + add_electricity_demand=add_electricity_demand, + add_heat_demand=add_heat_demand, ) stratified_thermal_storage.add_strat_tes( @@ -335,13 +339,20 @@ def apply_mvs( year=year, storeys=storeys, country=country, - add_pv_timeseries={"PV1": {"filename":"/home/inia/Dokumente/greco_env/pvcompare/pvcompare/data/user_inputs/mvs_inputs/time_series/cpv_90_0_2013_40.416775_-3.70379.csv", - "module_size": 1, "module_peak_power":50, "surface_type" : "flat_roof"}, - "PV2": { - "filename": "/home/inia/Dokumente/greco_env/pvcompare/pvcompare/data/user_inputs/mvs_inputs/time_series/cpv_90_0_2013_40.416775_-3.70379.csv", - "module_size": 1, "module_peak_power": 50, - "surface_type": "flat_roof"} - } + add_pv_timeseries={ + "PV1": { + "filename": "/home/inia/Dokumente/greco_env/pvcompare/pvcompare/data/user_inputs/mvs_inputs/time_series/cpv_90_0_2013_40.416775_-3.70379.csv", + "module_size": 1, + "module_peak_power": 50, + "surface_type": "flat_roof", + }, + "PV2": { + "filename": "/home/inia/Dokumente/greco_env/pvcompare/pvcompare/data/user_inputs/mvs_inputs/time_series/cpv_90_0_2013_40.416775_-3.70379.csv", + "module_size": 1, + "module_peak_power": 50, + "surface_type": "flat_roof", + }, + }, ) # apply_mvs( diff --git a/pvcompare/pv_feedin.py b/pvcompare/pv_feedin.py index dbbe6652..30053e90 100644 --- a/pvcompare/pv_feedin.py +++ b/pvcompare/pv_feedin.py @@ -52,7 +52,7 @@ def create_pv_components( user_inputs_mvs_directory=None, psi_type="Chen", normalization=True, - add_sam_si_module=None + add_sam_si_module=None, ): """ Creates feed-in time series for all surface types in `pv_setup` or 'pv_setup.csv'. @@ -168,7 +168,7 @@ def create_pv_components( surface_azimuth=j, surface_tilt=k, normalization=normalization, - add_sam_si_module=add_sam_si_module + add_sam_si_module=add_sam_si_module, ) elif row["technology"] == "cpv": time_series = create_cpv_time_series( @@ -415,7 +415,10 @@ def create_si_time_series( """ system, module_parameters = set_up_system( - technology="si", surface_azimuth=surface_azimuth, surface_tilt=surface_tilt, add_sam_si_module=add_sam_si_module + technology="si", + surface_azimuth=surface_azimuth, + surface_tilt=surface_tilt, + add_sam_si_module=add_sam_si_module, ) location = Location(latitude=lat, longitude=lon) @@ -712,9 +715,13 @@ def get_peak(technology, module_parameters_1, module_parameters_2): ) return peak -def add_pv_timeseries(add_pv_timeseries, storeys, - user_inputs_mvs_directory, - user_inputs_pvcompare_directory): + +def add_pv_timeseries( + add_pv_timeseries, + storeys, + user_inputs_mvs_directory, + user_inputs_pvcompare_directory, +): """ This function calculates the maximal capacity and inserts the time series filename and the maximum capacity into 'user_inputs/mvs_inputs/csv_elements/energyProduction.csv'. @@ -750,25 +757,33 @@ def add_pv_timeseries(add_pv_timeseries, storeys, for key in add_pv_timeseries.keys(): # check if PV timeseries exists if not os.path.isfile(add_pv_timeseries[key]["filename"]): - logging.error("The PV time series you have specified does not exist. " - "Please check your input or set 'add_pv_timeseries' to None " - "in order to use the default pvcompare methods.") + logging.error( + "The PV time series you have specified does not exist. " + "Please check your input or set 'add_pv_timeseries' to None " + "in order to use the default pvcompare methods." + ) return - pv_timeseries=pd.read_csv(add_pv_timeseries[key]["filename"], index_col=0, header=None) + pv_timeseries = pd.read_csv( + add_pv_timeseries[key]["filename"], index_col=0, header=None + ) # add "evaluated_period" to simulation_settings.csv check_inputs.add_evaluated_period_to_simulation_settings( - time_series=pv_timeseries, user_inputs_mvs_directory=user_inputs_mvs_directory + time_series=pv_timeseries, + user_inputs_mvs_directory=user_inputs_mvs_directory, ) area = area_potential.calculate_area_potential( storeys, user_inputs_pvcompare_directory, surface_type=add_pv_timeseries[key]["surface_type"], ) - nominal_value = round((area / add_pv_timeseries[key]["module_size"]) * add_pv_timeseries[key]["module_peak_power"]) + nominal_value = round( + (area / add_pv_timeseries[key]["module_size"]) + * add_pv_timeseries[key]["module_peak_power"] + ) check_inputs.add_parameters_to_energy_production_file( technology=key, ts_filename=add_pv_timeseries[key]["filename"], nominal_value=nominal_value, user_inputs_mvs_directory=user_inputs_mvs_directory, - ) \ No newline at end of file + ) From 9bf257d7bf980d6ba20fde2fa64801133bc9fa64 Mon Sep 17 00:00:00 2001 From: Piranias Date: Tue, 25 May 2021 19:58:12 +0200 Subject: [PATCH 11/37] add sam_si_module to nominal value --- pvcompare/pv_feedin.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/pvcompare/pv_feedin.py b/pvcompare/pv_feedin.py index 30053e90..26221577 100644 --- a/pvcompare/pv_feedin.py +++ b/pvcompare/pv_feedin.py @@ -252,6 +252,7 @@ def create_pv_components( surface_azimuth=j, surface_tilt=k, psi_type=psi_type, + add_sam_si_module=add_sam_si_module ) # save the file name of the time series and the nominal value to # mvs_inputs/elements/csv/energyProduction.csv @@ -379,7 +380,7 @@ def set_up_system(technology, surface_azimuth, surface_tilt, add_sam_si_module=N def create_si_time_series( - lat, lon, weather, surface_azimuth, surface_tilt, normalization, add_sam_si_module + lat, lon, weather, surface_azimuth, surface_tilt, normalization, add_sam_si_module=None ): """ @@ -605,7 +606,7 @@ def create_psi_time_series( return (output / peak).clip(0) -def nominal_values_pv(technology, area, surface_azimuth, surface_tilt, psi_type): +def nominal_values_pv(technology, area, surface_azimuth, surface_tilt, psi_type, add_sam_si_module): """ calculates the maximum installed capacity for each pv module. @@ -636,6 +637,7 @@ def nominal_values_pv(technology, area, surface_azimuth, surface_tilt, psi_type) technology=technology, surface_azimuth=surface_azimuth, surface_tilt=surface_tilt, + add_sam_si_module=add_sam_si_module ) peak = get_peak( technology, module_parameters_1=module_parameters, module_parameters_2=None, @@ -750,7 +752,9 @@ def add_pv_timeseries( If None, `constants.DEFAULT_USER_INPUTS_PVCOMPARE_DIRECTORY` is used as user_inputs_pvcompare_directory. Default: None. - :return: + + Return + ------- None """ From 1a77703eafc84dc5e724fd307eb735b21034c0eb Mon Sep 17 00:00:00 2001 From: Piranias Date: Tue, 25 May 2021 20:00:09 +0200 Subject: [PATCH 12/37] add tests for new features to test_main() --- tests/test_main.py | 124 ++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 123 insertions(+), 1 deletion(-) diff --git a/tests/test_main.py b/tests/test_main.py index 832fb58d..836c14d7 100644 --- a/tests/test_main.py +++ b/tests/test_main.py @@ -15,6 +15,7 @@ import mock import shutil import pytest +import pandas as pd TESTS_ON_MASTER = "master" EXECUTE_TESTS_ON = os.environ.get("EXECUTE_TESTS_ON", "skip") @@ -35,7 +36,7 @@ def setup_class(self): self.user_inputs_pvcompare_directory = os.path.join( os.path.dirname(__file__), "data_test_main/user_inputs/pvcompare_inputs/" ) - self.static_inputs_directory = None + self.static_inputs_directory = "data/static_inputs/" self.user_inputs_mvs_directory = os.path.join( os.path.dirname(__file__), "data_test_main/user_inputs/mvs_inputs/" ) @@ -77,6 +78,127 @@ def test_apply_pvcompare(self): ) ) + def test_apply_pvcompare_add_weather_file(self): + # delete file + directory = os.path.join(self.user_inputs_mvs_directory, "time_series") + filelist = glob.glob(os.path.join(directory, "*.csv")) + for f in filelist: + os.remove(f) + + weather_file = os.path.join(self.static_inputs_directory,"weatherdata_53.2_13.2_2017.csv") + + main.apply_pvcompare( + storeys=self.storeys, + country=self.country, + latitude=self.latitude, + longitude=self.longitude, + year=self.year, + static_inputs_directory=self.static_inputs_directory, + user_inputs_pvcompare_directory=self.user_inputs_pvcompare_directory, + user_inputs_mvs_directory=self.user_inputs_mvs_directory, + collections_mvs_inputs_directory=self.user_inputs_collection_mvs, + plot=False, + pv_setup=None, + overwrite_grid_parameters=True, + overwrite_pv_parameters=True, + add_weather_file= weather_file + ) + + assert os.path.isfile( + os.path.join( + self.user_inputs_mvs_directory, + "time_series", + "si_180_38_2017_52.52437_13.41053.csv", + ) + ) + + def test_apply_pvcompare_add_demands(self): + + filename_electricity_demand = os.path.join(self.user_inputs_mvs_directory, "predefined_time_series/electricity_load_2015_France_5.csv") + + main.apply_pvcompare( + storeys=self.storeys, + country=self.country, + latitude=self.latitude, + longitude=self.longitude, + year=self.year, + static_inputs_directory=self.static_inputs_directory, + user_inputs_pvcompare_directory=self.user_inputs_pvcompare_directory, + user_inputs_mvs_directory=self.user_inputs_mvs_directory, + collections_mvs_inputs_directory=self.user_inputs_collection_mvs, + plot=False, + pv_setup=None, + overwrite_grid_parameters=True, + overwrite_pv_parameters=True, + add_heat_demand=None, + add_electricity_demand=filename_electricity_demand + ) + + energyConsumption = pd.read_csv( + os.path.join( + self.user_inputs_mvs_directory, "csv_elements/energyConsumption.csv" + )) + assert energyConsumption.at["file_name", "Electricity demand"] == filename_electricity_demand + + + def test_apply_pvcompare_add_pv_timeseries(self): + + filename_pv_timeseries = os.path.join(self.user_inputs_mvs_directory, "predefined_time_series/si_180_38_2012_52.52437_13.41053.csv") + + main.apply_pvcompare( + storeys=self.storeys, + country=self.country, + latitude=self.latitude, + longitude=self.longitude, + year=self.year, + static_inputs_directory=self.static_inputs_directory, + user_inputs_pvcompare_directory=self.user_inputs_pvcompare_directory, + user_inputs_mvs_directory=self.user_inputs_mvs_directory, + collections_mvs_inputs_directory=self.user_inputs_collection_mvs, + plot=False, + pv_setup=None, + overwrite_grid_parameters=True, + overwrite_pv_parameters=False, + add_pv_timeseries={"si": {"filename": filename_pv_timeseries, + "module_size": 1, + "module_peak_power": 50, + "surface_type": "flat_roof",}} + ) + + energyProduction = pd.read_csv( + os.path.join( + self.user_inputs_mvs_directory, "csv_elements/energyProduction.csv" + )) + assert energyProduction.at["file_name", "PV si"] == filename_pv_timeseries + + + def test_apply_pvcompare_add_sam_si_module(self): + + filename_pv_timeseries = os.path.join(self.user_inputs_mvs_directory, "predefined_time_series/si_180_38_2012_52.52437_13.41053.csv") + + main.apply_pvcompare( + storeys=self.storeys, + country=self.country, + latitude=self.latitude, + longitude=self.longitude, + year=self.year, + static_inputs_directory=self.static_inputs_directory, + user_inputs_pvcompare_directory=self.user_inputs_pvcompare_directory, + user_inputs_mvs_directory=self.user_inputs_mvs_directory, + collections_mvs_inputs_directory=self.user_inputs_collection_mvs, + plot=False, + pv_setup=None, + overwrite_grid_parameters=True, + overwrite_pv_parameters=False, + add_sam_si_module={'cecmod' :'Advance_Solar_Hydro_Wind_Power_API_180'} + ) + + energyProduction = pd.read_csv( + os.path.join( + self.user_inputs_mvs_directory, "csv_elements/energyProduction.csv" + )) + assert energyProduction.at["maximumCap", "PV si"] == 27790.992 + # this ensures that the test is only run if explicitly executed, i.e. not when the # `pytest` command alone is called @pytest.mark.skipif( From d034425166eb2b1eea7454df879b6266a05b8bc1 Mon Sep 17 00:00:00 2001 From: Piranias Date: Tue, 25 May 2021 20:02:00 +0200 Subject: [PATCH 13/37] add predefined timeseries to test data --- .../electricity_load_2015_France_5.csv | 8761 ++++++++++++++++ .../heat_load_2015_40.0_5.0_5.csv | 3 + .../si_180_38_2012_52.52437_13.41053.csv | 8785 +++++++++++++++++ 3 files changed, 17549 insertions(+) create mode 100644 tests/data_test_main/user_inputs/mvs_inputs/predefined_time_series/electricity_load_2015_France_5.csv create mode 100644 tests/data_test_main/user_inputs/mvs_inputs/predefined_time_series/heat_load_2015_40.0_5.0_5.csv create mode 100644 tests/data_test_main/user_inputs/mvs_inputs/predefined_time_series/si_180_38_2012_52.52437_13.41053.csv diff --git a/tests/data_test_main/user_inputs/mvs_inputs/predefined_time_series/electricity_load_2015_France_5.csv b/tests/data_test_main/user_inputs/mvs_inputs/predefined_time_series/electricity_load_2015_France_5.csv new file mode 100644 index 00000000..dae8019c --- /dev/null +++ b/tests/data_test_main/user_inputs/mvs_inputs/predefined_time_series/electricity_load_2015_France_5.csv @@ -0,0 +1,8761 @@ +kWh +6635.736623479216 +6127.707638127782 +4413.893807914459 +3533.4670323748614 +3223.788870007861 +3036.413981892132 +3027.7900330667217 +3211.2449444436284 +3919.1927434750232 +6940.71081375963 +10858.335566539125 +13654.846972015299 +15897.857661969701 +16205.183838293406 +13564.687507022376 +10671.744673771158 +9141.385754934741 +8365.23036064783 +9854.821521400489 +12262.471234385446 +13821.053985741386 +12553.333508406098 +10626.272943600816 +8997.130610946064 +6635.736623479216 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +5255.904811413595 +4144.983403631216 +3300.620414088788 +3112.4615306252936 +3015.2461075024885 +3142.2533538403472 +4163.015296629801 +6424.84187493055 +9385.208308089519 +11111.566063867076 +11592.939207394515 +12151.143895002879 +13061.36249375753 +12998.642865936365 +12030.408611447137 +11273.85310085434 +11345.98067284868 +14150.332031802502 +16417.646577537602 +16473.310247228885 +13481.584000159333 +10512.593618174953 +9603.94301011583 +8146.495658621518 +6127.707638127782 +4413.893807914459 +3533.4670323748614 +3223.788870007861 +3036.413981892132 +3027.7900330667217 +3211.2449444436284 +3919.1927434750232 +6940.71081375963 +10858.335566539125 +13654.846972015299 +15897.857661969701 +16205.183838293406 +13564.687507022376 +10671.744673771158 +9141.385754934741 +8365.23036064783 +9854.821521400489 +12262.471234385446 +13821.053985741386 +12553.333508406098 +10626.272943600816 +8997.130610946064 +6635.736623479216 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +5255.904811413595 +4144.983403631216 +3300.620414088788 +3112.4615306252936 +3015.2461075024885 +3142.2533538403472 +4163.015296629801 +6424.84187493055 +9385.208308089519 +11111.566063867076 +11592.939207394515 +12151.143895002879 +13061.36249375753 +12998.642865936365 +12030.408611447137 +11273.85310085434 +11345.98067284868 +14150.332031802502 +16417.646577537602 +16473.310247228885 +13481.584000159333 +10512.593618174953 +9603.94301011583 +8146.495658621518 +6127.707638127782 +4413.893807914459 +3533.4670323748614 +3223.788870007861 +3036.413981892132 +3027.7900330667217 +3211.2449444436284 +3919.1927434750232 +6940.71081375963 +10858.335566539125 +13654.846972015299 +15897.857661969701 +16205.183838293406 +13564.687507022376 +10671.744673771158 +9141.385754934741 +8365.23036064783 +9854.821521400489 +12262.471234385446 +13821.053985741386 +12553.333508406098 +10626.272943600816 +8997.130610946064 +6635.736623479216 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +5255.904811413595 +4144.983403631216 +3300.620414088788 +3112.4615306252936 +3015.2461075024885 +3142.2533538403472 +4163.015296629801 +6424.84187493055 +9385.208308089519 +11111.566063867076 +11592.939207394515 +12151.143895002879 +13061.36249375753 +12998.642865936365 +12030.408611447137 +11273.85310085434 +11345.98067284868 +14150.332031802502 +16417.646577537602 +16473.310247228885 +13481.584000159333 +10512.593618174953 +9603.94301011583 +8146.495658621518 +6127.707638127782 +4413.893807914459 +3533.4670323748614 +3223.788870007861 +3036.413981892132 +3027.7900330667217 +3211.2449444436284 +3919.1927434750232 +6940.71081375963 +10858.335566539125 +13654.846972015299 +15897.857661969701 +16205.183838293406 +13564.687507022376 +10671.744673771158 +9141.385754934741 +8365.23036064783 +9854.821521400489 +12262.471234385446 +13821.053985741386 +12553.333508406098 +10626.272943600816 +8997.130610946064 +6635.736623479216 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +5255.904811413595 +4144.983403631216 +3300.620414088788 +3112.4615306252936 +3015.2461075024885 +3142.2533538403472 +4163.015296629801 +6424.84187493055 +9385.208308089519 +11111.566063867076 +11592.939207394515 +12151.143895002879 +13061.36249375753 +12998.642865936365 +12030.408611447137 +11273.85310085434 +11345.98067284868 +14150.332031802502 +16417.646577537602 +16473.310247228885 +13481.584000159333 +10512.593618174953 +9603.94301011583 +8146.495658621518 +6127.707638127782 +4413.893807914459 +3533.4670323748614 +3223.788870007861 +3036.413981892132 +3027.7900330667217 +3211.2449444436284 +3919.1927434750232 +6940.71081375963 +10858.335566539125 +13654.846972015299 +15897.857661969701 +16205.183838293406 +13564.687507022376 +10671.744673771158 +9141.385754934741 +8365.23036064783 +9854.821521400489 +12262.471234385446 +13821.053985741386 +12553.333508406098 +10626.272943600816 +8997.130610946064 +6635.736623479216 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +5255.904811413595 +4144.983403631216 +3300.620414088788 +3112.4615306252936 +3015.2461075024885 +3142.2533538403472 +4163.015296629801 +6424.84187493055 +9385.208308089519 +11111.566063867076 +11592.939207394515 +12151.143895002879 +13061.36249375753 +12998.642865936365 +12030.408611447137 +11273.85310085434 +11345.98067284868 +14150.332031802502 +16417.646577537602 +16473.310247228885 +13481.584000159333 +10512.593618174953 +9603.94301011583 +8146.495658621518 +6127.707638127782 +4413.893807914459 +3533.4670323748614 +3223.788870007861 +3036.413981892132 +3027.7900330667217 +3211.2449444436284 +3919.1927434750232 +6940.71081375963 +10858.335566539125 +13654.846972015299 +15897.857661969701 +16205.183838293406 +13564.687507022376 +10671.744673771158 +9141.385754934741 +8365.23036064783 +9854.821521400489 +12262.471234385446 +13821.053985741386 +12553.333508406098 +10626.272943600816 +8997.130610946064 +6635.736623479216 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +5255.904811413595 +4144.983403631216 +3300.620414088788 +3112.4615306252936 +3015.2461075024885 +3142.2533538403472 +4163.015296629801 +6424.84187493055 +9385.208308089519 +11111.566063867076 +11592.939207394515 +12151.143895002879 +13061.36249375753 +12998.642865936365 +12030.408611447137 +11273.85310085434 +11345.98067284868 +14150.332031802502 +16417.646577537602 +16473.310247228885 +13481.584000159333 +10512.593618174953 +9603.94301011583 +8146.495658621518 +6127.707638127782 +4413.893807914459 +3533.4670323748614 +3223.788870007861 +3036.413981892132 +3027.7900330667217 +3211.2449444436284 +3919.1927434750232 +6940.71081375963 +10858.335566539125 +13654.846972015299 +15897.857661969701 +16205.183838293406 +13564.687507022376 +10671.744673771158 +9141.385754934741 +8365.23036064783 +9854.821521400489 +12262.471234385446 +13821.053985741386 +12553.333508406098 +10626.272943600816 +8997.130610946064 +6635.736623479216 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +5255.904811413595 +4144.983403631216 +3300.620414088788 +3112.4615306252936 +3015.2461075024885 +3142.2533538403472 +4163.015296629801 +6424.84187493055 +9385.208308089519 +11111.566063867076 +11592.939207394515 +12151.143895002879 +13061.36249375753 +12998.642865936365 +12030.408611447137 +11273.85310085434 +11345.98067284868 +14150.332031802502 +16417.646577537602 +16473.310247228885 +13481.584000159333 +10512.593618174953 +9603.94301011583 +8146.495658621518 +6127.707638127782 +4413.893807914459 +3533.4670323748614 +3223.788870007861 +3036.413981892132 +3027.7900330667217 +3211.2449444436284 +3919.1927434750232 +6940.71081375963 +10858.335566539125 +13654.846972015299 +15897.857661969701 +16205.183838293406 +13564.687507022376 +10671.744673771158 +9141.385754934741 +8365.23036064783 +9854.821521400489 +12262.471234385446 +13821.053985741386 +12553.333508406098 +10626.272943600816 +8997.130610946064 +6635.736623479216 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +5255.904811413595 +4144.983403631216 +3300.620414088788 +3112.4615306252936 +3015.2461075024885 +3142.2533538403472 +4163.015296629801 +6424.84187493055 +9385.208308089519 +11111.566063867076 +11592.939207394515 +12151.143895002879 +13061.36249375753 +12998.642865936365 +12030.408611447137 +11273.85310085434 +11345.98067284868 +14150.332031802502 +16417.646577537602 +16473.310247228885 +13481.584000159333 +10512.593618174953 +9603.94301011583 +8146.495658621518 +6127.707638127782 +4413.893807914459 +3533.4670323748614 +3223.788870007861 +3036.413981892132 +3027.7900330667217 +3211.2449444436284 +3919.1927434750232 +6940.71081375963 +10858.335566539125 +13654.846972015299 +15897.857661969701 +16205.183838293406 +13564.687507022376 +10671.744673771158 +9141.385754934741 +8365.23036064783 +9854.821521400489 +12262.471234385446 +13821.053985741386 +12553.333508406098 +10626.272943600816 +8997.130610946064 +6635.736623479216 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +5255.904811413595 +4144.983403631216 +3300.620414088788 +3112.4615306252936 +3015.2461075024885 +3142.2533538403472 +4163.015296629801 +6424.84187493055 +9385.208308089519 +11111.566063867076 +11592.939207394515 +12151.143895002879 +13061.36249375753 +12998.642865936365 +12030.408611447137 +11273.85310085434 +11345.98067284868 +14150.332031802502 +16417.646577537602 +16473.310247228885 +13481.584000159333 +10512.593618174953 +9603.94301011583 +8146.495658621518 +6127.707638127782 +4413.893807914459 +3533.4670323748614 +3223.788870007861 +3036.413981892132 +3027.7900330667217 +3211.2449444436284 +3919.1927434750232 +6940.71081375963 +10858.335566539125 +13654.846972015299 +15897.857661969701 +16205.183838293406 +13564.687507022376 +10671.744673771158 +9141.385754934741 +8365.23036064783 +9854.821521400489 +12262.471234385446 +13821.053985741386 +12553.333508406098 +10626.272943600816 +8997.130610946064 +6635.736623479216 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +5255.904811413595 +4144.983403631216 +3300.620414088788 +3112.4615306252936 +3015.2461075024885 +3142.2533538403472 +4163.015296629801 +6424.84187493055 +9385.208308089519 +11111.566063867076 +11592.939207394515 +12151.143895002879 +13061.36249375753 +12998.642865936365 +12030.408611447137 +11273.85310085434 +11345.98067284868 +14150.332031802502 +16417.646577537602 +16473.310247228885 +13481.584000159333 +10512.593618174953 +9603.94301011583 +8146.495658621518 +6127.707638127782 +4413.893807914459 +3533.4670323748614 +3223.788870007861 +3036.413981892132 +3027.7900330667217 +3211.2449444436284 +3919.1927434750232 +6940.71081375963 +10858.335566539125 +13654.846972015299 +15897.857661969701 +16205.183838293406 +13564.687507022376 +10671.744673771158 +9141.385754934741 +8365.23036064783 +9854.821521400489 +12262.471234385446 +13821.053985741386 +12553.333508406098 +10626.272943600816 +8997.130610946064 +6635.736623479216 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +5255.904811413595 +4144.983403631216 +3300.620414088788 +3112.4615306252936 +3015.2461075024885 +3142.2533538403472 +4163.015296629801 +6424.84187493055 +9385.208308089519 +11111.566063867076 +11592.939207394515 +12151.143895002879 +13061.36249375753 +12998.642865936365 +12030.408611447137 +11273.85310085434 +11345.98067284868 +14150.332031802502 +16417.646577537602 +16473.310247228885 +13481.584000159333 +10512.593618174953 +9603.94301011583 +8146.495658621518 +6127.707638127782 +4413.893807914459 +3533.4670323748614 +3223.788870007861 +3036.413981892132 +3027.7900330667217 +3211.2449444436284 +3919.1927434750232 +6940.71081375963 +10858.335566539125 +13654.846972015299 +15897.857661969701 +16205.183838293406 +13564.687507022376 +10671.744673771158 +9141.385754934741 +8365.23036064783 +9854.821521400489 +12262.471234385446 +13821.053985741386 +12553.333508406098 +10626.272943600816 +8997.130610946064 +6635.736623479216 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +5734.92596889774 +4411.541821871166 +3641.6583903663704 +3430.7636418177044 +3382.939925604066 +3539.7389951569776 +4593.428742552543 +7311.540613252266 +10168.419660506312 +11791.290030378947 +12801.076038299698 +13469.824069942864 +14220.891613101312 +13911.997446082076 +12644.276968746788 +11653.306849172384 +11487.883830794064 +12493.74986197599 +14369.850729176578 +15526.2438671293 +14141.708082977091 +11551.387453962992 +10863.823533973475 +9134.329796804863 +6608.296786307457 +4876.451063095548 +3833.737250568687 +3472.3153952492257 +3382.9399256040665 +3391.5638744294765 +3586.778716022851 +5139.87349994444 +8719.59625783741 +12507.861778235752 +14510.969891774197 +16086.800540780961 +16291.423326547509 +13222.081540049265 +10680.368622596568 +9487.127703298913 +8412.270081513703 +8761.148011268931 +10783.85600850149 +12616.053136227261 +12129.976020613236 +11283.261045027513 +10007.700614214578 +7367.988278291314 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5734.92596889774 +4411.541821871166 +3641.6583903663704 +3430.7636418177044 +3382.939925604066 +3539.7389951569776 +4593.428742552543 +7311.540613252266 +10168.419660506312 +11791.290030378947 +12801.076038299698 +13469.824069942864 +14220.891613101312 +13911.997446082076 +12644.276968746788 +11653.306849172384 +11487.883830794064 +12493.74986197599 +14369.850729176578 +15526.2438671293 +14141.708082977091 +11551.387453962992 +10863.823533973475 +9134.329796804863 +6608.296786307457 +4876.451063095548 +3833.737250568687 +3472.3153952492257 +3382.9399256040665 +3391.5638744294765 +3586.778716022851 +5139.87349994444 +8719.59625783741 +12507.861778235752 +14510.969891774197 +16086.800540780961 +16291.423326547509 +13222.081540049265 +10680.368622596568 +9487.127703298913 +8412.270081513703 +8761.148011268931 +10783.85600850149 +12616.053136227261 +12129.976020613236 +11283.261045027513 +10007.700614214578 +7367.988278291314 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5734.92596889774 +4411.541821871166 +3641.6583903663704 +3430.7636418177044 +3382.939925604066 +3539.7389951569776 +4593.428742552543 +7311.540613252266 +10168.419660506312 +11791.290030378947 +12801.076038299698 +13469.824069942864 +14220.891613101312 +13911.997446082076 +12644.276968746788 +11653.306849172384 +11487.883830794064 +12493.74986197599 +14369.850729176578 +15526.2438671293 +14141.708082977091 +11551.387453962992 +10863.823533973475 +9134.329796804863 +6608.296786307457 +4876.451063095548 +3833.737250568687 +3472.3153952492257 +3382.9399256040665 +3391.5638744294765 +3586.778716022851 +5139.87349994444 +8719.59625783741 +12507.861778235752 +14510.969891774197 +16086.800540780961 +16291.423326547509 +13222.081540049265 +10680.368622596568 +9487.127703298913 +8412.270081513703 +8761.148011268931 +10783.85600850149 +12616.053136227261 +12129.976020613236 +11283.261045027513 +10007.700614214578 +7367.988278291314 +6608.296786307457 +4876.451063095548 +3833.737250568687 +3472.3153952492257 +3382.9399256040665 +3391.5638744294765 +3586.778716022851 +5139.87349994444 +8719.59625783741 +12507.861778235752 +14510.969891774197 +16086.800540780961 +16291.423326547509 +13222.081540049265 +10680.368622596568 +9487.127703298913 +8412.270081513703 +8761.148011268931 +10783.85600850149 +12616.053136227261 +12129.976020613236 +11283.261045027513 +10007.700614214578 +7367.988278291314 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5734.92596889774 +4411.541821871166 +3641.6583903663704 +3430.7636418177044 +3382.939925604066 +3539.7389951569776 +4593.428742552543 +7311.540613252266 +10168.419660506312 +11791.290030378947 +12801.076038299698 +13469.824069942864 +14220.891613101312 +13911.997446082076 +12644.276968746788 +11653.306849172384 +11487.883830794064 +12493.74986197599 +14369.850729176578 +15526.2438671293 +14141.708082977091 +11551.387453962992 +10863.823533973475 +9134.329796804863 +6608.296786307457 +4876.451063095548 +3833.737250568687 +3472.3153952492257 +3382.9399256040665 +3391.5638744294765 +3586.778716022851 +5139.87349994444 +8719.59625783741 +12507.861778235752 +14510.969891774197 +16086.800540780961 +16291.423326547509 +13222.081540049265 +10680.368622596568 +9487.127703298913 +8412.270081513703 +8761.148011268931 +10783.85600850149 +12616.053136227261 +12129.976020613236 +11283.261045027513 +10007.700614214578 +7367.988278291314 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5734.92596889774 +4411.541821871166 +3641.6583903663704 +3430.7636418177044 +3382.939925604066 +3539.7389951569776 +4593.428742552543 +7311.540613252266 +10168.419660506312 +11791.290030378947 +12801.076038299698 +13469.824069942864 +14220.891613101312 +13911.997446082076 +12644.276968746788 +11653.306849172384 +11487.883830794064 +12493.74986197599 +14369.850729176578 +15526.2438671293 +14141.708082977091 +11551.387453962992 +10863.823533973475 +9134.329796804863 +6608.296786307457 +4876.451063095548 +3833.737250568687 +3472.3153952492257 +3382.9399256040665 +3391.5638744294765 +3586.778716022851 +5139.87349994444 +8719.59625783741 +12507.861778235752 +14510.969891774197 +16086.800540780961 +16291.423326547509 +13222.081540049265 +10680.368622596568 +9487.127703298913 +8412.270081513703 +8761.148011268931 +10783.85600850149 +12616.053136227261 +12129.976020613236 +11283.261045027513 +10007.700614214578 +7367.988278291314 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5734.92596889774 +4411.541821871166 +3641.6583903663704 +3430.7636418177044 +3382.939925604066 +3539.7389951569776 +4593.428742552543 +7311.540613252266 +10168.419660506312 +11791.290030378947 +12801.076038299698 +13469.824069942864 +14220.891613101312 +13911.997446082076 +12644.276968746788 +11653.306849172384 +11487.883830794064 +12493.74986197599 +14369.850729176578 +15526.2438671293 +14141.708082977091 +11551.387453962992 +10863.823533973475 +9134.329796804863 +6608.296786307457 +4876.451063095548 +3833.737250568687 +3472.3153952492257 +3382.9399256040665 +3391.5638744294765 +3586.778716022851 +5139.87349994444 +8719.59625783741 +12507.861778235752 +14510.969891774197 +16086.800540780961 +16291.423326547509 +13222.081540049265 +10680.368622596568 +9487.127703298913 +8412.270081513703 +8761.148011268931 +10783.85600850149 +12616.053136227261 +12129.976020613236 +11283.261045027513 +10007.700614214578 +7367.988278291314 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +6608.296786307457 +4876.451063095548 +3833.737250568687 +3472.3153952492257 +3382.9399256040665 +3391.5638744294765 +3586.778716022851 +5139.87349994444 +8719.59625783741 +12507.861778235752 +14510.969891774197 +16086.800540780961 +16291.423326547509 +13222.081540049265 +10680.368622596568 +9487.127703298913 +8412.270081513703 +8761.148011268931 +10783.85600850149 +12616.053136227261 +12129.976020613236 +11283.261045027513 +10007.700614214578 +7367.988278291314 +5734.92596889774 +4411.541821871166 +3641.6583903663704 +3430.7636418177044 +3382.939925604066 +3539.7389951569776 +4593.428742552543 +7311.540613252266 +10168.419660506312 +11791.290030378947 +12801.076038299698 +13469.824069942864 +14220.891613101312 +13911.997446082076 +12644.276968746788 +11653.306849172384 +11487.883830794064 +12493.74986197599 +14369.850729176578 +15526.2438671293 +14141.708082977091 +11551.387453962992 +10863.823533973475 +9134.329796804863 +6608.296786307457 +4876.451063095548 +3833.737250568687 +3472.3153952492257 +3382.9399256040665 +3391.5638744294765 +3586.778716022851 +5139.87349994444 +8719.59625783741 +12507.861778235752 +14510.969891774197 +16086.800540780961 +16291.423326547509 +13222.081540049265 +10680.368622596568 +9487.127703298913 +8412.270081513703 +8761.148011268931 +10783.85600850149 +12616.053136227261 +12129.976020613236 +11283.261045027513 +10007.700614214578 +7367.988278291314 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +6608.296786307457 +4876.451063095548 +3833.737250568687 +3472.3153952492257 +3382.9399256040665 +3391.5638744294765 +3586.778716022851 +5139.87349994444 +8719.59625783741 +12507.861778235752 +14510.969891774197 +16086.800540780961 +16291.423326547509 +13222.081540049265 +10680.368622596568 +9487.127703298913 +8412.270081513703 +8761.148011268931 +10783.85600850149 +12616.053136227261 +12129.976020613236 +11283.261045027513 +10007.700614214578 +7367.988278291314 +5734.92596889774 +4411.541821871166 +3641.6583903663704 +3430.7636418177044 +3382.939925604066 +3539.7389951569776 +4593.428742552543 +7311.540613252266 +10168.419660506312 +11791.290030378947 +12801.076038299698 +13469.824069942864 +14220.891613101312 +13911.997446082076 +12644.276968746788 +11653.306849172384 +11487.883830794064 +12493.74986197599 +14369.850729176578 +15526.2438671293 +14141.708082977091 +11551.387453962992 +10863.823533973475 +9134.329796804863 +6608.296786307457 +4876.451063095548 +3833.737250568687 +3472.3153952492257 +3382.9399256040665 +3391.5638744294765 +3586.778716022851 +5139.87349994444 +8719.59625783741 +12507.861778235752 +14510.969891774197 +16086.800540780961 +16291.423326547509 +13222.081540049265 +10680.368622596568 +9487.127703298913 +8412.270081513703 +8761.148011268931 +10783.85600850149 +12616.053136227261 +12129.976020613236 +11283.261045027513 +10007.700614214578 +7367.988278291314 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +6608.296786307457 +4876.451063095548 +3833.737250568687 +3472.3153952492257 +3382.9399256040665 +3391.5638744294765 +3586.778716022851 +5139.87349994444 +8719.59625783741 +12507.861778235752 +14510.969891774197 +16086.800540780961 +16291.423326547509 +13222.081540049265 +10680.368622596568 +9487.127703298913 +8412.270081513703 +8761.148011268931 +10783.85600850149 +12616.053136227261 +12129.976020613236 +11283.261045027513 +10007.700614214578 +7367.988278291314 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +6507.161386445829 +5043.4420721694 +4101.079664156401 +3923.1127202138464 +3957.608515515487 +4047.767980508411 +4994.834360607996 +7299.780683035797 +10064.148279253626 +12210.727541432985 +12924.947303246498 +13416.512386294875 +14278.123273488123 +13796.750129960685 +12322.838876163318 +11631.354979434976 +11356.956607717382 +11678.39470030085 +13051.954549584356 +14142.492078324856 +13553.711572153674 +12059.416439314426 +11649.386872433563 +9773.286005232976 +7025.382311318202 +5225.328992850777 +4271.20665462131 +3967.8004550364262 +3918.408748127259 +3823.545311047748 +4024.2481200754746 +5446.415680920382 +8817.595676307981 +12562.741452579272 +14628.56919393888 +16129.92028490801 +16419.998563580895 +13748.926413747045 +11295.02097524398 +9750.550140147803 +8496.941579072276 +8591.805016151788 +9929.301079438123 +11918.297276716805 +12497.669838714814 +11802.26596524765 +10991.614775659098 +8472.637723291575 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +6507.161386445829 +5043.4420721694 +4101.079664156401 +3923.1127202138464 +3957.608515515487 +4047.767980508411 +4994.834360607996 +7299.780683035797 +10064.148279253626 +12210.727541432985 +12924.947303246498 +13416.512386294875 +14278.123273488123 +13796.750129960685 +12322.838876163318 +11631.354979434976 +11356.956607717382 +11678.39470030085 +13051.954549584356 +14142.492078324856 +13553.711572153674 +12059.416439314426 +11649.386872433563 +9773.286005232976 +7025.382311318202 +5225.328992850777 +4271.20665462131 +3967.8004550364262 +3918.408748127259 +3823.545311047748 +4024.2481200754746 +5446.415680920382 +8817.595676307981 +12562.741452579272 +14628.56919393888 +16129.92028490801 +16419.998563580895 +13748.926413747045 +11295.02097524398 +9750.550140147803 +8496.941579072276 +8591.805016151788 +9929.301079438123 +11918.297276716805 +12497.669838714814 +11802.26596524765 +10991.614775659098 +8472.637723291575 +7025.382311318202 +5225.328992850777 +4271.20665462131 +3967.8004550364262 +3918.408748127259 +3823.545311047748 +4024.2481200754746 +5446.415680920382 +8817.595676307981 +12562.741452579272 +14628.56919393888 +16129.92028490801 +16419.998563580895 +13748.926413747045 +11295.02097524398 +9750.550140147803 +8496.941579072276 +8591.805016151788 +9929.301079438123 +11918.297276716805 +12497.669838714814 +11802.26596524765 +10991.614775659098 +8472.637723291575 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +6507.161386445829 +5043.4420721694 +4101.079664156401 +3923.1127202138464 +3957.608515515487 +4047.767980508411 +4994.834360607996 +7299.780683035797 +10064.148279253626 +12210.727541432985 +12924.947303246498 +13416.512386294875 +14278.123273488123 +13796.750129960685 +12322.838876163318 +11631.354979434976 +11356.956607717382 +11678.39470030085 +13051.954549584356 +14142.492078324856 +13553.711572153674 +12059.416439314426 +11649.386872433563 +9773.286005232976 +7025.382311318202 +5225.328992850777 +4271.20665462131 +3967.8004550364262 +3918.408748127259 +3823.545311047748 +4024.2481200754746 +5446.415680920382 +8817.595676307981 +12562.741452579272 +14628.56919393888 +16129.92028490801 +16419.998563580895 +13748.926413747045 +11295.02097524398 +9750.550140147803 +8496.941579072276 +8591.805016151788 +9929.301079438123 +11918.297276716805 +12497.669838714814 +11802.26596524765 +10991.614775659098 +8472.637723291575 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +6507.161386445829 +5043.4420721694 +4101.079664156401 +3923.1127202138464 +3957.608515515487 +4047.767980508411 +4994.834360607996 +7299.780683035797 +10064.148279253626 +12210.727541432985 +12924.947303246498 +13416.512386294875 +14278.123273488123 +13796.750129960685 +12322.838876163318 +11631.354979434976 +11356.956607717382 +11678.39470030085 +13051.954549584356 +14142.492078324856 +13553.711572153674 +12059.416439314426 +11649.386872433563 +9773.286005232976 +7025.382311318202 +5225.328992850777 +4271.20665462131 +3967.8004550364262 +3918.408748127259 +3823.545311047748 +4024.2481200754746 +5446.415680920382 +8817.595676307981 +12562.741452579272 +14628.56919393888 +16129.92028490801 +16419.998563580895 +13748.926413747045 +11295.02097524398 +9750.550140147803 +8496.941579072276 +8591.805016151788 +9929.301079438123 +11918.297276716805 +12497.669838714814 +11802.26596524765 +10991.614775659098 +8472.637723291575 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +6507.161386445829 +5043.4420721694 +4101.079664156401 +3923.1127202138464 +3957.608515515487 +4047.767980508411 +4994.834360607996 +7299.780683035797 +10064.148279253626 +12210.727541432985 +12924.947303246498 +13416.512386294875 +14278.123273488123 +13796.750129960685 +12322.838876163318 +11631.354979434976 +11356.956607717382 +11678.39470030085 +13051.954549584356 +14142.492078324856 +13553.711572153674 +12059.416439314426 +11649.386872433563 +9773.286005232976 +7025.382311318202 +5225.328992850777 +4271.20665462131 +3967.8004550364262 +3918.408748127259 +3823.545311047748 +4024.2481200754746 +5446.415680920382 +8817.595676307981 +12562.741452579272 +14628.56919393888 +16129.92028490801 +16419.998563580895 +13748.926413747045 +11295.02097524398 +9750.550140147803 +8496.941579072276 +8591.805016151788 +9929.301079438123 +11918.297276716805 +12497.669838714814 +11802.26596524765 +10991.614775659098 +8472.637723291575 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +6507.161386445829 +5043.4420721694 +4101.079664156401 +3923.1127202138464 +3957.608515515487 +4047.767980508411 +4994.834360607996 +7299.780683035797 +10064.148279253626 +12210.727541432985 +12924.947303246498 +13416.512386294875 +14278.123273488123 +13796.750129960685 +12322.838876163318 +11631.354979434976 +11356.956607717382 +11678.39470030085 +13051.954549584356 +14142.492078324856 +13553.711572153674 +12059.416439314426 +11649.386872433563 +9773.286005232976 +7025.382311318202 +5225.328992850777 +4271.20665462131 +3967.8004550364262 +3918.408748127259 +3823.545311047748 +4024.2481200754746 +5446.415680920382 +8817.595676307981 +12562.741452579272 +14628.56919393888 +16129.92028490801 +16419.998563580895 +13748.926413747045 +11295.02097524398 +9750.550140147803 +8496.941579072276 +8591.805016151788 +9929.301079438123 +11918.297276716805 +12497.669838714814 +11802.26596524765 +10991.614775659098 +8472.637723291575 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +6507.161386445829 +5043.4420721694 +4101.079664156401 +3923.1127202138464 +3957.608515515487 +4047.767980508411 +4994.834360607996 +7299.780683035797 +10064.148279253626 +12210.727541432985 +12924.947303246498 +13416.512386294875 +14278.123273488123 +13796.750129960685 +12322.838876163318 +11631.354979434976 +11356.956607717382 +11678.39470030085 +13051.954549584356 +14142.492078324856 +13553.711572153674 +12059.416439314426 +11649.386872433563 +9773.286005232976 +7025.382311318202 +5225.328992850777 +4271.20665462131 +3967.8004550364262 +3918.408748127259 +3823.545311047748 +4024.2481200754746 +5446.415680920382 +8817.595676307981 +12562.741452579272 +14628.56919393888 +16129.92028490801 +16419.998563580895 +13748.926413747045 +11295.02097524398 +9750.550140147803 +8496.941579072276 +8591.805016151788 +9929.301079438123 +11918.297276716805 +12497.669838714814 +11802.26596524765 +10991.614775659098 +8472.637723291575 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +6507.161386445829 +5043.4420721694 +4101.079664156401 +3923.1127202138464 +3957.608515515487 +4047.767980508411 +4994.834360607996 +7299.780683035797 +10064.148279253626 +12210.727541432985 +12924.947303246498 +13416.512386294875 +14278.123273488123 +13796.750129960685 +12322.838876163318 +11631.354979434976 +11356.956607717382 +11678.39470030085 +13051.954549584356 +14142.492078324856 +13553.711572153674 +12059.416439314426 +11649.386872433563 +9773.286005232976 +7025.382311318202 +5225.328992850777 +4271.20665462131 +3967.8004550364262 +3918.408748127259 +3823.545311047748 +4024.2481200754746 +5446.415680920382 +8817.595676307981 +12562.741452579272 +14628.56919393888 +16129.92028490801 +16419.998563580895 +13748.926413747045 +11295.02097524398 +9750.550140147803 +8496.941579072276 +8591.805016151788 +9929.301079438123 +11918.297276716805 +12497.669838714814 +11802.26596524765 +10991.614775659098 +8472.637723291575 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +6507.161386445829 +5043.4420721694 +4101.079664156401 +3923.1127202138464 +3957.608515515487 +4047.767980508411 +4994.834360607996 +7299.780683035797 +10064.148279253626 +12210.727541432985 +12924.947303246498 +13416.512386294875 +14278.123273488123 +13796.750129960685 +12322.838876163318 +11631.354979434976 +11356.956607717382 +11678.39470030085 +13051.954549584356 +14142.492078324856 +13553.711572153674 +12059.416439314426 +11649.386872433563 +9773.286005232976 +7025.382311318202 +5225.328992850777 +4271.20665462131 +3967.8004550364262 +3918.408748127259 +3823.545311047748 +4024.2481200754746 +5446.415680920382 +8817.595676307981 +12562.741452579272 +14628.56919393888 +16129.92028490801 +16419.998563580895 +13748.926413747045 +11295.02097524398 +9750.550140147803 +8496.941579072276 +8591.805016151788 +9929.301079438123 +11918.297276716805 +12497.669838714814 +11802.26596524765 +10991.614775659098 +8472.637723291575 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +7025.382311318202 +5225.328992850777 +4271.20665462131 +3967.8004550364262 +3918.408748127259 +3823.545311047748 +4024.2481200754746 +5446.415680920382 +8817.595676307981 +12562.741452579272 +14628.56919393888 +16129.92028490801 +16419.998563580895 +13748.926413747045 +11295.02097524398 +9750.550140147803 +8496.941579072276 +8591.805016151788 +9929.301079438123 +11918.297276716805 +12497.669838714814 +11802.26596524765 +10991.614775659098 +8472.637723291575 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +6507.161386445829 +5043.4420721694 +4101.079664156401 +3923.1127202138464 +3957.608515515487 +4047.767980508411 +4994.834360607996 +7299.780683035797 +10064.148279253626 +12210.727541432985 +12924.947303246498 +13416.512386294875 +14278.123273488123 +13796.750129960685 +12322.838876163318 +11631.354979434976 +11356.956607717382 +11678.39470030085 +13051.954549584356 +14142.492078324856 +13553.711572153674 +12059.416439314426 +11649.386872433563 +9773.286005232976 +7025.382311318202 +5225.328992850777 +4271.20665462131 +3967.8004550364262 +3918.408748127259 +3823.545311047748 +4024.2481200754746 +5446.415680920382 +8817.595676307981 +12562.741452579272 +14628.56919393888 +16129.92028490801 +16419.998563580895 +13748.926413747045 +11295.02097524398 +9750.550140147803 +8496.941579072276 +8591.805016151788 +9929.301079438123 +11918.297276716805 +12497.669838714814 +11802.26596524765 +10991.614775659098 +8472.637723291575 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +6507.161386445829 +5043.4420721694 +4101.079664156401 +3923.1127202138464 +3957.608515515487 +4047.767980508411 +4994.834360607996 +7299.780683035797 +10064.148279253626 +12210.727541432985 +12924.947303246498 +13416.512386294875 +14278.123273488123 +13796.750129960685 +12322.838876163318 +11631.354979434976 +11356.956607717382 +11678.39470030085 +13051.954549584356 +14142.492078324856 +13553.711572153674 +12059.416439314426 +11649.386872433563 +9773.286005232976 +7025.382311318202 +5225.328992850777 +4271.20665462131 +3967.8004550364262 +3918.408748127259 +3823.545311047748 +4024.2481200754746 +5446.415680920382 +8817.595676307981 +12562.741452579272 +14628.56919393888 +16129.92028490801 +16419.998563580895 +13748.926413747045 +11295.02097524398 +9750.550140147803 +8496.941579072276 +8591.805016151788 +9929.301079438123 +11918.297276716805 +12497.669838714814 +11802.26596524765 +10991.614775659098 +8472.637723291575 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +6507.161386445829 +5043.4420721694 +4101.079664156401 +3923.1127202138464 +3957.608515515487 +4047.767980508411 +4994.834360607996 +7299.780683035797 +10064.148279253626 +12210.727541432985 +12924.947303246498 +13416.512386294875 +14278.123273488123 +13796.750129960685 +12322.838876163318 +11631.354979434976 +11356.956607717382 +11678.39470030085 +13051.954549584356 +14142.492078324856 +13553.711572153674 +12059.416439314426 +11649.386872433563 +9773.286005232976 +7025.382311318202 +5225.328992850777 +4271.20665462131 +3967.8004550364262 +3918.408748127259 +3823.545311047748 +4024.2481200754746 +5446.415680920382 +8817.595676307981 +12562.741452579272 +14628.56919393888 +16129.92028490801 +16419.998563580895 +13748.926413747045 +11295.02097524398 +9750.550140147803 +8496.941579072276 +8591.805016151788 +9929.301079438123 +11918.297276716805 +12497.669838714814 +11802.26596524765 +10991.614775659098 +8472.637723291575 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +6507.161386445829 +5043.4420721694 +4101.079664156401 +3923.1127202138464 +3957.608515515487 +4047.767980508411 +4994.834360607996 +7299.780683035797 +10064.148279253626 +12210.727541432985 +12924.947303246498 +13416.512386294875 +14278.123273488123 +13796.750129960685 +12322.838876163318 +11631.354979434976 +11356.956607717382 +11678.39470030085 +13051.954549584356 +14142.492078324856 +13553.711572153674 +12059.416439314426 +11649.386872433563 +9773.286005232976 +7025.382311318202 +5225.328992850777 +4271.20665462131 +3967.8004550364262 +3918.408748127259 +3823.545311047748 +4024.2481200754746 +5446.415680920382 +8817.595676307981 +12562.741452579272 +14628.56919393888 +16129.92028490801 +16419.998563580895 +13748.926413747045 +11295.02097524398 +9750.550140147803 +8496.941579072276 +8591.805016151788 +9929.301079438123 +11918.297276716805 +12497.669838714814 +11802.26596524765 +10991.614775659098 +8472.637723291575 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +7025.382311318202 +5225.328992850777 +4271.20665462131 +3967.8004550364262 +3918.408748127259 +3823.545311047748 +4024.2481200754746 +5446.415680920382 +8817.595676307981 +12562.741452579272 +14628.56919393888 +16129.92028490801 +16419.998563580895 +13748.926413747045 +11295.02097524398 +9750.550140147803 +8496.941579072276 +8591.805016151788 +9929.301079438123 +11918.297276716805 +12497.669838714814 +11802.26596524765 +10991.614775659098 +8472.637723291575 +7025.382311318202 +5225.328992850777 +4271.20665462131 +3967.8004550364262 +3918.408748127259 +3823.545311047748 +4024.2481200754746 +5446.415680920382 +8817.595676307981 +12562.741452579272 +14628.56919393888 +16129.92028490801 +16419.998563580895 +13748.926413747045 +11295.02097524398 +9750.550140147803 +8496.941579072276 +8591.805016151788 +9929.301079438123 +11918.297276716805 +12497.669838714814 +11802.26596524765 +10991.614775659098 +8472.637723291575 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +6507.161386445829 +5043.4420721694 +4101.079664156401 +3923.1127202138464 +3957.608515515487 +4047.767980508411 +4994.834360607996 +7299.780683035797 +10064.148279253626 +12210.727541432985 +12924.947303246498 +13416.512386294875 +14278.123273488123 +13796.750129960685 +12322.838876163318 +11631.354979434976 +11356.956607717382 +11678.39470030085 +13051.954549584356 +14142.492078324856 +13553.711572153674 +12059.416439314426 +11649.386872433563 +9773.286005232976 +7025.382311318202 +5225.328992850777 +4271.20665462131 +3967.8004550364262 +3918.408748127259 +3823.545311047748 +4024.2481200754746 +5446.415680920382 +8817.595676307981 +12562.741452579272 +14628.56919393888 +16129.92028490801 +16419.998563580895 +13748.926413747045 +11295.02097524398 +9750.550140147803 +8496.941579072276 +8591.805016151788 +9929.301079438123 +11918.297276716805 +12497.669838714814 +11802.26596524765 +10991.614775659098 +8472.637723291575 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +6507.161386445829 +5043.4420721694 +4101.079664156401 +3923.1127202138464 +3957.608515515487 +4047.767980508411 +4994.834360607996 +7299.780683035797 +10064.148279253626 +12210.727541432985 +12924.947303246498 +13416.512386294875 +14278.123273488123 +13796.750129960685 +12322.838876163318 +11631.354979434976 +11356.956607717382 +11678.39470030085 +13051.954549584356 +14142.492078324856 +13553.711572153674 +12059.416439314426 +11649.386872433563 +9773.286005232976 +7025.382311318202 +5225.328992850777 +4271.20665462131 +3967.8004550364262 +3918.408748127259 +3823.545311047748 +4024.2481200754746 +5446.415680920382 +8817.595676307981 +12562.741452579272 +14628.56919393888 +16129.92028490801 +16419.998563580895 +13748.926413747045 +11295.02097524398 +9750.550140147803 +8496.941579072276 +8591.805016151788 +9929.301079438123 +11918.297276716805 +12497.669838714814 +11802.26596524765 +10991.614775659098 +8472.637723291575 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +6507.161386445829 +5043.4420721694 +4101.079664156401 +3923.1127202138464 +3957.608515515487 +4047.767980508411 +4994.834360607996 +7299.780683035797 +10064.148279253626 +12210.727541432985 +12924.947303246498 +13416.512386294875 +14278.123273488123 +13796.750129960685 +12322.838876163318 +11631.354979434976 +11356.956607717382 +11678.39470030085 +13051.954549584356 +14142.492078324856 +13553.711572153674 +12059.416439314426 +11649.386872433563 +9773.286005232976 +7025.382311318202 +5225.328992850777 +4271.20665462131 +3967.8004550364262 +3918.408748127259 +3823.545311047748 +4024.2481200754746 +5446.415680920382 +8817.595676307981 +12562.741452579272 +14628.56919393888 +16129.92028490801 +16419.998563580895 +13748.926413747045 +11295.02097524398 +9750.550140147803 +8496.941579072276 +8591.805016151788 +9929.301079438123 +11918.297276716805 +12497.669838714814 +11802.26596524765 +10991.614775659098 +8472.637723291575 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +6507.161386445829 +5043.4420721694 +4101.079664156401 +3923.1127202138464 +3957.608515515487 +4047.767980508411 +4994.834360607996 +7299.780683035797 +10064.148279253626 +12210.727541432985 +12924.947303246498 +13416.512386294875 +14278.123273488123 +13796.750129960685 +12322.838876163318 +11631.354979434976 +11356.956607717382 +11678.39470030085 +13051.954549584356 +14142.492078324856 +13553.711572153674 +12059.416439314426 +11649.386872433563 +9773.286005232976 +7025.382311318202 +5225.328992850777 +4271.20665462131 +3967.8004550364262 +3918.408748127259 +3823.545311047748 +4024.2481200754746 +5446.415680920382 +8817.595676307981 +12562.741452579272 +14628.56919393888 +16129.92028490801 +16419.998563580895 +13748.926413747045 +11295.02097524398 +9750.550140147803 +8496.941579072276 +8591.805016151788 +9929.301079438123 +11918.297276716805 +12497.669838714814 +11802.26596524765 +10991.614775659098 +8472.637723291575 +5774.125736285967 +4299.430487140833 +3902.728841171968 +3673.802199624717 +3824.3293063955125 +4645.956430852769 +7675.31445461502 +10169.203655854079 +11104.510105737196 +11295.020975243982 +10916.3512222737 +11129.59795686566 +12373.798573768014 +11970.824965017031 +10330.706697493577 +9313.08073609518 +8999.482596989357 +9603.159014768067 +11146.061859168716 +12949.251159027199 +13059.794503062001 +12351.846704030606 +11329.516770545622 +8787.019857745161 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5734.92596889774 +4411.541821871166 +3641.6583903663704 +3430.7636418177044 +3382.939925604066 +3539.7389951569776 +4593.428742552543 +7311.540613252266 +10168.419660506312 +11791.290030378947 +12801.076038299698 +13469.824069942864 +14220.891613101312 +13911.997446082076 +12644.276968746788 +11653.306849172384 +11487.883830794064 +12493.74986197599 +14369.850729176578 +15526.2438671293 +14141.708082977091 +11551.387453962992 +10863.823533973475 +9134.329796804863 +6608.296786307457 +4876.451063095548 +3833.737250568687 +3472.3153952492257 +3382.9399256040665 +3391.5638744294765 +3586.778716022851 +5139.87349994444 +8719.59625783741 +12507.861778235752 +14510.969891774197 +16086.800540780961 +16291.423326547509 +13222.081540049265 +10680.368622596568 +9487.127703298913 +8412.270081513703 +8761.148011268931 +10783.85600850149 +12616.053136227261 +12129.976020613236 +11283.261045027513 +10007.700614214578 +7367.988278291314 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5734.92596889774 +4411.541821871166 +3641.6583903663704 +3430.7636418177044 +3382.939925604066 +3539.7389951569776 +4593.428742552543 +7311.540613252266 +10168.419660506312 +11791.290030378947 +12801.076038299698 +13469.824069942864 +14220.891613101312 +13911.997446082076 +12644.276968746788 +11653.306849172384 +11487.883830794064 +12493.74986197599 +14369.850729176578 +15526.2438671293 +14141.708082977091 +11551.387453962992 +10863.823533973475 +9134.329796804863 +6608.296786307457 +4876.451063095548 +3833.737250568687 +3472.3153952492257 +3382.9399256040665 +3391.5638744294765 +3586.778716022851 +5139.87349994444 +8719.59625783741 +12507.861778235752 +14510.969891774197 +16086.800540780961 +16291.423326547509 +13222.081540049265 +10680.368622596568 +9487.127703298913 +8412.270081513703 +8761.148011268931 +10783.85600850149 +12616.053136227261 +12129.976020613236 +11283.261045027513 +10007.700614214578 +7367.988278291314 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5734.92596889774 +4411.541821871166 +3641.6583903663704 +3430.7636418177044 +3382.939925604066 +3539.7389951569776 +4593.428742552543 +7311.540613252266 +10168.419660506312 +11791.290030378947 +12801.076038299698 +13469.824069942864 +14220.891613101312 +13911.997446082076 +12644.276968746788 +11653.306849172384 +11487.883830794064 +12493.74986197599 +14369.850729176578 +15526.2438671293 +14141.708082977091 +11551.387453962992 +10863.823533973475 +9134.329796804863 +6608.296786307457 +4876.451063095548 +3833.737250568687 +3472.3153952492257 +3382.9399256040665 +3391.5638744294765 +3586.778716022851 +5139.87349994444 +8719.59625783741 +12507.861778235752 +14510.969891774197 +16086.800540780961 +16291.423326547509 +13222.081540049265 +10680.368622596568 +9487.127703298913 +8412.270081513703 +8761.148011268931 +10783.85600850149 +12616.053136227261 +12129.976020613236 +11283.261045027513 +10007.700614214578 +7367.988278291314 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5734.92596889774 +4411.541821871166 +3641.6583903663704 +3430.7636418177044 +3382.939925604066 +3539.7389951569776 +4593.428742552543 +7311.540613252266 +10168.419660506312 +11791.290030378947 +12801.076038299698 +13469.824069942864 +14220.891613101312 +13911.997446082076 +12644.276968746788 +11653.306849172384 +11487.883830794064 +12493.74986197599 +14369.850729176578 +15526.2438671293 +14141.708082977091 +11551.387453962992 +10863.823533973475 +9134.329796804863 +6608.296786307457 +4876.451063095548 +3833.737250568687 +3472.3153952492257 +3382.9399256040665 +3391.5638744294765 +3586.778716022851 +5139.87349994444 +8719.59625783741 +12507.861778235752 +14510.969891774197 +16086.800540780961 +16291.423326547509 +13222.081540049265 +10680.368622596568 +9487.127703298913 +8412.270081513703 +8761.148011268931 +10783.85600850149 +12616.053136227261 +12129.976020613236 +11283.261045027513 +10007.700614214578 +7367.988278291314 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5734.92596889774 +4411.541821871166 +3641.6583903663704 +3430.7636418177044 +3382.939925604066 +3539.7389951569776 +4593.428742552543 +7311.540613252266 +10168.419660506312 +11791.290030378947 +12801.076038299698 +13469.824069942864 +14220.891613101312 +13911.997446082076 +12644.276968746788 +11653.306849172384 +11487.883830794064 +12493.74986197599 +14369.850729176578 +15526.2438671293 +14141.708082977091 +11551.387453962992 +10863.823533973475 +9134.329796804863 +6608.296786307457 +4876.451063095548 +3833.737250568687 +3472.3153952492257 +3382.9399256040665 +3391.5638744294765 +3586.778716022851 +5139.87349994444 +8719.59625783741 +12507.861778235752 +14510.969891774197 +16086.800540780961 +16291.423326547509 +13222.081540049265 +10680.368622596568 +9487.127703298913 +8412.270081513703 +8761.148011268931 +10783.85600850149 +12616.053136227261 +12129.976020613236 +11283.261045027513 +10007.700614214578 +7367.988278291314 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5734.92596889774 +4411.541821871166 +3641.6583903663704 +3430.7636418177044 +3382.939925604066 +3539.7389951569776 +4593.428742552543 +7311.540613252266 +10168.419660506312 +11791.290030378947 +12801.076038299698 +13469.824069942864 +14220.891613101312 +13911.997446082076 +12644.276968746788 +11653.306849172384 +11487.883830794064 +12493.74986197599 +14369.850729176578 +15526.2438671293 +14141.708082977091 +11551.387453962992 +10863.823533973475 +9134.329796804863 +6608.296786307457 +4876.451063095548 +3833.737250568687 +3472.3153952492257 +3382.9399256040665 +3391.5638744294765 +3586.778716022851 +5139.87349994444 +8719.59625783741 +12507.861778235752 +14510.969891774197 +16086.800540780961 +16291.423326547509 +13222.081540049265 +10680.368622596568 +9487.127703298913 +8412.270081513703 +8761.148011268931 +10783.85600850149 +12616.053136227261 +12129.976020613236 +11283.261045027513 +10007.700614214578 +7367.988278291314 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5219.841025416424 +3854.90512495833 +3472.3153952492257 +3379.803944213008 +3455.0674975984057 +4126.951510632632 +7284.100776080506 +10169.987651201842 +10777.584045719374 +10659.98474355469 +10351.874571883218 +10449.089995006023 +11729.354397905547 +11419.676235538547 +9939.493018959063 +8893.643225041144 +8321.326621173015 +9120.2178805451 +11356.172612369617 +13476.096032724981 +13175.04181918339 +12226.407448388278 +10637.248878469518 +7861.121352035219 +5734.92596889774 +4411.541821871166 +3641.6583903663704 +3430.7636418177044 +3382.939925604066 +3539.7389951569776 +4593.428742552543 +7311.540613252266 +10168.419660506312 +11791.290030378947 +12801.076038299698 +13469.824069942864 +14220.891613101312 +13911.997446082076 +12644.276968746788 +11653.306849172384 +11487.883830794064 +12493.74986197599 +14369.850729176578 +15526.2438671293 +14141.708082977091 +11551.387453962992 +10863.823533973475 +9134.329796804863 +6127.707638127782 +4413.893807914459 +3533.4670323748614 +3223.788870007861 +3036.413981892132 +3027.7900330667217 +3211.2449444436284 +3919.1927434750232 +6940.71081375963 +10858.335566539125 +13654.846972015299 +15897.857661969701 +16205.183838293406 +13564.687507022376 +10671.744673771158 +9141.385754934741 +8365.23036064783 +9854.821521400489 +12262.471234385446 +13821.053985741386 +12553.333508406098 +10626.272943600816 +8997.130610946064 +6635.736623479216 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +5255.904811413595 +4144.983403631216 +3300.620414088788 +3112.4615306252936 +3015.2461075024885 +3142.2533538403472 +4163.015296629801 +6424.84187493055 +9385.208308089519 +11111.566063867076 +11592.939207394515 +12151.143895002879 +13061.36249375753 +12998.642865936365 +12030.408611447137 +11273.85310085434 +11345.98067284868 +14150.332031802502 +16417.646577537602 +16473.310247228885 +13481.584000159333 +10512.593618174953 +9603.94301011583 +8146.495658621518 +6127.707638127782 +4413.893807914459 +3533.4670323748614 +3223.788870007861 +3036.413981892132 +3027.7900330667217 +3211.2449444436284 +3919.1927434750232 +6940.71081375963 +10858.335566539125 +13654.846972015299 +15897.857661969701 +16205.183838293406 +13564.687507022376 +10671.744673771158 +9141.385754934741 +8365.23036064783 +9854.821521400489 +12262.471234385446 +13821.053985741386 +12553.333508406098 +10626.272943600816 +8997.130610946064 +6635.736623479216 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +6127.707638127782 +4413.893807914459 +3533.4670323748614 +3223.788870007861 +3036.413981892132 +3027.7900330667217 +3211.2449444436284 +3919.1927434750232 +6940.71081375963 +10858.335566539125 +13654.846972015299 +15897.857661969701 +16205.183838293406 +13564.687507022376 +10671.744673771158 +9141.385754934741 +8365.23036064783 +9854.821521400489 +12262.471234385446 +13821.053985741386 +12553.333508406098 +10626.272943600816 +8997.130610946064 +6635.736623479216 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +5255.904811413595 +4144.983403631216 +3300.620414088788 +3112.4615306252936 +3015.2461075024885 +3142.2533538403472 +4163.015296629801 +6424.84187493055 +9385.208308089519 +11111.566063867076 +11592.939207394515 +12151.143895002879 +13061.36249375753 +12998.642865936365 +12030.408611447137 +11273.85310085434 +11345.98067284868 +14150.332031802502 +16417.646577537602 +16473.310247228885 +13481.584000159333 +10512.593618174953 +9603.94301011583 +8146.495658621518 +6127.707638127782 +4413.893807914459 +3533.4670323748614 +3223.788870007861 +3036.413981892132 +3027.7900330667217 +3211.2449444436284 +3919.1927434750232 +6940.71081375963 +10858.335566539125 +13654.846972015299 +15897.857661969701 +16205.183838293406 +13564.687507022376 +10671.744673771158 +9141.385754934741 +8365.23036064783 +9854.821521400489 +12262.471234385446 +13821.053985741386 +12553.333508406098 +10626.272943600816 +8997.130610946064 +6635.736623479216 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +5255.904811413595 +4144.983403631216 +3300.620414088788 +3112.4615306252936 +3015.2461075024885 +3142.2533538403472 +4163.015296629801 +6424.84187493055 +9385.208308089519 +11111.566063867076 +11592.939207394515 +12151.143895002879 +13061.36249375753 +12998.642865936365 +12030.408611447137 +11273.85310085434 +11345.98067284868 +14150.332031802502 +16417.646577537602 +16473.310247228885 +13481.584000159333 +10512.593618174953 +9603.94301011583 +8146.495658621518 +6127.707638127782 +4413.893807914459 +3533.4670323748614 +3223.788870007861 +3036.413981892132 +3027.7900330667217 +3211.2449444436284 +3919.1927434750232 +6940.71081375963 +10858.335566539125 +13654.846972015299 +15897.857661969701 +16205.183838293406 +13564.687507022376 +10671.744673771158 +9141.385754934741 +8365.23036064783 +9854.821521400489 +12262.471234385446 +13821.053985741386 +12553.333508406098 +10626.272943600816 +8997.130610946064 +6635.736623479216 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +5255.904811413595 +4144.983403631216 +3300.620414088788 +3112.4615306252936 +3015.2461075024885 +3142.2533538403472 +4163.015296629801 +6424.84187493055 +9385.208308089519 +11111.566063867076 +11592.939207394515 +12151.143895002879 +13061.36249375753 +12998.642865936365 +12030.408611447137 +11273.85310085434 +11345.98067284868 +14150.332031802502 +16417.646577537602 +16473.310247228885 +13481.584000159333 +10512.593618174953 +9603.94301011583 +8146.495658621518 +6127.707638127782 +4413.893807914459 +3533.4670323748614 +3223.788870007861 +3036.413981892132 +3027.7900330667217 +3211.2449444436284 +3919.1927434750232 +6940.71081375963 +10858.335566539125 +13654.846972015299 +15897.857661969701 +16205.183838293406 +13564.687507022376 +10671.744673771158 +9141.385754934741 +8365.23036064783 +9854.821521400489 +12262.471234385446 +13821.053985741386 +12553.333508406098 +10626.272943600816 +8997.130610946064 +6635.736623479216 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +5255.904811413595 +4144.983403631216 +3300.620414088788 +3112.4615306252936 +3015.2461075024885 +3142.2533538403472 +4163.015296629801 +6424.84187493055 +9385.208308089519 +11111.566063867076 +11592.939207394515 +12151.143895002879 +13061.36249375753 +12998.642865936365 +12030.408611447137 +11273.85310085434 +11345.98067284868 +14150.332031802502 +16417.646577537602 +16473.310247228885 +13481.584000159333 +10512.593618174953 +9603.94301011583 +8146.495658621518 +6127.707638127782 +4413.893807914459 +3533.4670323748614 +3223.788870007861 +3036.413981892132 +3027.7900330667217 +3211.2449444436284 +3919.1927434750232 +6940.71081375963 +10858.335566539125 +13654.846972015299 +15897.857661969701 +16205.183838293406 +13564.687507022376 +10671.744673771158 +9141.385754934741 +8365.23036064783 +9854.821521400489 +12262.471234385446 +13821.053985741386 +12553.333508406098 +10626.272943600816 +8997.130610946064 +6635.736623479216 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +5255.904811413595 +4144.983403631216 +3300.620414088788 +3112.4615306252936 +3015.2461075024885 +3142.2533538403472 +4163.015296629801 +6424.84187493055 +9385.208308089519 +11111.566063867076 +11592.939207394515 +12151.143895002879 +13061.36249375753 +12998.642865936365 +12030.408611447137 +11273.85310085434 +11345.98067284868 +14150.332031802502 +16417.646577537602 +16473.310247228885 +13481.584000159333 +10512.593618174953 +9603.94301011583 +8146.495658621518 +6127.707638127782 +4413.893807914459 +3533.4670323748614 +3223.788870007861 +3036.413981892132 +3027.7900330667217 +3211.2449444436284 +3919.1927434750232 +6940.71081375963 +10858.335566539125 +13654.846972015299 +15897.857661969701 +16205.183838293406 +13564.687507022376 +10671.744673771158 +9141.385754934741 +8365.23036064783 +9854.821521400489 +12262.471234385446 +13821.053985741386 +12553.333508406098 +10626.272943600816 +8997.130610946064 +6635.736623479216 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +5255.904811413595 +4144.983403631216 +3300.620414088788 +3112.4615306252936 +3015.2461075024885 +3142.2533538403472 +4163.015296629801 +6424.84187493055 +9385.208308089519 +11111.566063867076 +11592.939207394515 +12151.143895002879 +13061.36249375753 +12998.642865936365 +12030.408611447137 +11273.85310085434 +11345.98067284868 +14150.332031802502 +16417.646577537602 +16473.310247228885 +13481.584000159333 +10512.593618174953 +9603.94301011583 +8146.495658621518 +6127.707638127782 +4413.893807914459 +3533.4670323748614 +3223.788870007861 +3036.413981892132 +3027.7900330667217 +3211.2449444436284 +3919.1927434750232 +6940.71081375963 +10858.335566539125 +13654.846972015299 +15897.857661969701 +16205.183838293406 +13564.687507022376 +10671.744673771158 +9141.385754934741 +8365.23036064783 +9854.821521400489 +12262.471234385446 +13821.053985741386 +12553.333508406098 +10626.272943600816 +8997.130610946064 +6635.736623479216 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +6127.707638127782 +4413.893807914459 +3533.4670323748614 +3223.788870007861 +3036.413981892132 +3027.7900330667217 +3211.2449444436284 +3919.1927434750232 +6940.71081375963 +10858.335566539125 +13654.846972015299 +15897.857661969701 +16205.183838293406 +13564.687507022376 +10671.744673771158 +9141.385754934741 +8365.23036064783 +9854.821521400489 +12262.471234385446 +13821.053985741386 +12553.333508406098 +10626.272943600816 +8997.130610946064 +6635.736623479216 +5255.904811413595 +4144.983403631216 +3300.620414088788 +3112.4615306252936 +3015.2461075024885 +3142.2533538403472 +4163.015296629801 +6424.84187493055 +9385.208308089519 +11111.566063867076 +11592.939207394515 +12151.143895002879 +13061.36249375753 +12998.642865936365 +12030.408611447137 +11273.85310085434 +11345.98067284868 +14150.332031802502 +16417.646577537602 +16473.310247228885 +13481.584000159333 +10512.593618174953 +9603.94301011583 +8146.495658621518 +6127.707638127782 +4413.893807914459 +3533.4670323748614 +3223.788870007861 +3036.413981892132 +3027.7900330667217 +3211.2449444436284 +3919.1927434750232 +6940.71081375963 +10858.335566539125 +13654.846972015299 +15897.857661969701 +16205.183838293406 +13564.687507022376 +10671.744673771158 +9141.385754934741 +8365.23036064783 +9854.821521400489 +12262.471234385446 +13821.053985741386 +12553.333508406098 +10626.272943600816 +8997.130610946064 +6635.736623479216 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 +6772.935809338014 +4571.476872815136 +3382.939925604066 +3100.7016004088255 +3019.166084241312 +3067.7737958027137 +3672.234208929188 +7063.0140880109 +10147.25178611667 +10466.337892656844 +9660.390675154878 +9110.809936371925 +9276.232954750247 +10247.603190630532 +10152.73975355102 +9043.386336464173 +8217.839235268093 +8248.41505383091 +10087.668139686562 +13029.218684499183 +14666.984965979344 +13189.93773079092 +11051.982417436971 +9146.873722369093 diff --git a/tests/data_test_main/user_inputs/mvs_inputs/predefined_time_series/heat_load_2015_40.0_5.0_5.csv b/tests/data_test_main/user_inputs/mvs_inputs/predefined_time_series/heat_load_2015_40.0_5.0_5.csv new file mode 100644 index 00000000..eefe6f69 --- /dev/null +++ b/tests/data_test_main/user_inputs/mvs_inputs/predefined_time_series/heat_load_2015_40.0_5.0_5.csv @@ -0,0 +1,3 @@ +kWh +69818544.04289569 +74237439.23548402 diff --git a/tests/data_test_main/user_inputs/mvs_inputs/predefined_time_series/si_180_38_2012_52.52437_13.41053.csv b/tests/data_test_main/user_inputs/mvs_inputs/predefined_time_series/si_180_38_2012_52.52437_13.41053.csv new file mode 100644 index 00000000..5ee3f901 --- /dev/null +++ b/tests/data_test_main/user_inputs/mvs_inputs/predefined_time_series/si_180_38_2012_52.52437_13.41053.csv @@ -0,0 +1,8785 @@ +kW +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0015630145681308721 +0.008990122431317188 +0.019103901166021828 +0.021151693362852716 +0.026938414993099728 +0.011193148767105032 +0.006849087724089067 +0.0019482307800665509 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.001928432132328881 +0.010447868153817767 +0.019340766592001467 +0.029718632493627706 +0.03252486782868142 +0.028035210754892417 +0.014000121966367818 +0.0046703395856033825 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.008618679296215582 +0.1912448356522679 +0.3624823924247482 +0.47937612629032894 +0.4448276400163176 +0.261187306583529 +0.024408564644791807 +0.0053251370113208095 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.008449739171146591 +0.1890407503693017 +0.29240636436250744 +0.23209031287267257 +0.2420465361084087 +0.3746975049311016 +0.21843033033810627 +0.027291369929188854 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0019363304550457378 +0.023898441774588882 +0.06987872741586754 +0.15867290104161824 +0.31136510279135043 +0.1723165163771621 +0.045684317370879385 +0.016039769249606633 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0028369207742733903 +0.021457103348272805 +0.056279947512830095 +0.1846739574369914 +0.15636139352477377 +0.25926090792080897 +0.06994023918494893 +0.02777926381420723 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0032151025070157875 +0.016019500645578656 +0.03426586728006474 +0.0497429698031166 +0.047579226597514 +0.018351119213124066 +0.010043459687653394 +0.007638337636147143 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.003464383033627143 +0.020064962754578048 +0.03711718259799995 +0.04438438322016033 +0.05501569100476415 +0.0535438055403 +0.04883212445245636 +0.01770425486408499 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0032083847989868124 +0.024043354115560477 +0.08254005361809114 +0.0825821395388729 +0.0845045556214065 +0.07156209821081037 +0.0394835430940427 +0.008902178865723552 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.009543363906921109 +0.17394154986957835 +0.38930664157004063 +0.358146963564088 +0.21686255866520948 +0.1302559293212636 +0.04834929892639272 +0.018016341882519105 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0029245309478800976 +0.012889484586098012 +0.01863520805585565 +0.023138101831799977 +0.023125562944744132 +0.018686599278634242 +0.013736968534308648 +0.004448765982339372 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.001841866794851624 +0.015014402550332545 +0.03057327851604101 +0.055991955825576346 +0.091954550367064 +0.0543351499983725 +0.02087278978342759 +0.0025020563583352685 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.01022019568003128 +0.1861632026897143 +0.36711967765799114 +0.4005910513504835 +0.5029497141349528 +0.4096039665590311 +0.280012728370802 +0.10302776862193105 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.010463558709113755 +0.13386685663976125 +0.36231545628684847 +0.3810755875452975 +0.5007391366544105 +0.43419349706377464 +0.2471404755036338 +0.10111108209551123 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.010597049646882073 +0.12280776838212211 +0.1481318109629056 +0.331204575649537 +0.22406439659072874 +0.3054166659410739 +0.13083014544537003 +0.06241646128322884 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.004668765810325389 +0.019648871988191225 +0.04087552551235771 +0.036388076031938506 +0.04310482660965441 +0.05660449246672546 +0.025726541383776242 +0.013388254403663565 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0031679997856614013 +0.014121756129816048 +0.02352549621026201 +0.027774301250152303 +0.03767129762890936 +0.03532778181091872 +0.023459642832213128 +0.007310803576522927 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.01606999497053228 +0.2102072869007692 +0.4598188229572159 +0.5306149115828962 +0.5672859481199654 +0.5128116144019003 +0.3885313121639618 +0.16827873614724745 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.002080889619684549 +0.01130393572849083 +0.020513908666026683 +0.023005987181036053 +0.016659287873569045 +0.011485953833072333 +0.008087764520689147 +0.005306101088867258 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.006673552165596131 +0.02747441805394457 +0.04274215918880073 +0.06163327752066249 +0.06359298999750523 +0.15523854409031645 +0.11609727410221368 +0.03944599981388869 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.004757423637704443 +0.022636324915305768 +0.050745846020512735 +0.06798878436075952 +0.05874782588714798 +0.03188298973449427 +0.01358356695478315 +0.005705084684320349 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.010300950917338346 +0.06159078938427342 +0.08687853368124145 +0.1866925945957649 +0.18368165217528212 +0.15491009768972383 +0.05678647373125554 +0.029183832305739104 +0.0015742813914499728 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.013483830179644595 +0.1599870201462092 +0.1994423583357902 +0.1609444206206906 +0.16379134817950827 +0.11228732246615038 +0.07840820448141883 +0.03412738730851742 +0.003248767918974341 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.01177539477422885 +0.060421096811797415 +0.07632722211250073 +0.10976395557852886 +0.14138734339551534 +0.24687370835452613 +0.15052103944652065 +0.056983855257081044 +0.004266308545876766 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.01599147189060973 +0.11381647586838373 +0.10205140149729991 +0.10248817694669224 +0.12251027871562784 +0.12001037278224516 +0.07195458104305674 +0.030963448270702156 +0.003263337239087433 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.015853027134657933 +0.060505430034568375 +0.09188173001413659 +0.09824582470126585 +0.0975009938336349 +0.10221893747811153 +0.08118918712367178 +0.0440440563088256 +0.005006818160322468 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.06355643595578964 +0.30129478017795536 +0.43057983908447006 +0.5291439551013768 +0.40981961584245014 +0.28903403551135404 +0.1994225615952258 +0.09458817323693142 +0.00560530750859841 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.02787277070061064 +0.09066037186060971 +0.11138660583507873 +0.16208706575330076 +0.11249358736089107 +0.07935723738020273 +0.05816779026623703 +0.020068630217222345 +0.004012657247606687 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0565033921770799 +0.24272053295763626 +0.4306482258925969 +0.5491707914348727 +0.5753324721223102 +0.5008076633022194 +0.38271756672918383 +0.19609444886604896 +0.011475989907005109 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.1483794088249506 +0.4098686896670147 +0.5816703688326197 +0.6748183766202607 +0.6929049709027773 +0.6444592344645703 +0.5211250329340404 +0.2366100923508923 +0.014581376801415025 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.1422958926313536 +0.3976475976145505 +0.5758931385803358 +0.6735107059663379 +0.6943796402562629 +0.643973894997761 +0.5228476220926459 +0.2367558452713637 +0.016198582448546973 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.1632926195941268 +0.423285655896817 +0.5906633359406466 +0.6858509741380778 +0.7080876976245664 +0.6574243869934244 +0.5352201313088168 +0.24970052136331936 +0.018342287967059386 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.17276405489399047 +0.43792611946128523 +0.6051673433840868 +0.686208526800347 +0.7071427285756372 +0.6574042452106474 +0.5398873584494688 +0.2608727405191649 +0.02050291065746096 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0402794539632593 +0.0858051674647457 +0.20035311148721904 +0.21223502351300083 +0.2720350179612384 +0.22046994219780133 +0.1433592355803852 +0.06687925392220596 +0.012124836809099692 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.18764070374031477 +0.4404272762508796 +0.6124670775049565 +0.6999304306675612 +0.6929823300277682 +0.4565133916190785 +0.3972084978090528 +0.19050511088817448 +0.020590729986675764 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.11062041303325265 +0.1230770757783529 +0.26480010496378714 +0.3244853363686371 +0.3350322793093578 +0.3208602444442067 +0.23086890023598086 +0.07853978512232421 +0.013227159364242127 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.22046392029559292 +0.4826603053094986 +0.6497283331262866 +0.7417706544464021 +0.761568968269174 +0.713465568577304 +0.589955060929695 +0.38007236543638384 +0.09960346629782448 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.07532789283597159 +0.17932977340495726 +0.28661141931642375 +0.538445125886711 +0.5434155003337544 +0.41215278001605493 +0.23243317296565738 +0.1530392956673904 +0.020097790235541008 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.08073336215905282 +0.27729715110274067 +0.352411132133895 +0.36727626154739923 +0.577989959343936 +0.5807074795507035 +0.5377161676672504 +0.3785341013151177 +0.12402487383089139 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.01594695713765583 +0.08751916530229194 +0.3956875727554373 +0.5002461434070333 +0.4619059502290051 +0.24753980947834425 +0.1667654506425564 +0.09837652429862653 +0.017049777265845247 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.15862219899712898 +0.4003998411865219 +0.5889362794843502 +0.6741188470056585 +0.7017405664715467 +0.681343915347483 +0.5312007858590961 +0.3293568619427611 +0.08821379752140425 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.09097307255257295 +0.26724519733442925 +0.3906565144196971 +0.39266948250022693 +0.6055164201824622 +0.5712024497865278 +0.5776677968781229 +0.41429721595752694 +0.148858418623734 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.16344798015991238 +0.4257887425110048 +0.6099343028673841 +0.6600877644802128 +0.7113659274131408 +0.6757712897535305 +0.5158307865323144 +0.28365404960691115 +0.07415169355085689 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0020176159534557327 +0.02945451058522138 +0.07353868778594529 +0.12516397442494126 +0.15686376711540567 +0.1946620368803649 +0.1527241794786755 +0.11716453174307961 +0.0807942103185891 +0.022503677999648076 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.003701393076347399 +0.036541649579736366 +0.12468400608884449 +0.18765798511509035 +0.2299830983313869 +0.22402826239851456 +0.2508231667975585 +0.1989717207040042 +0.08642719731439373 +0.014782521984771703 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.006595759697064365 +0.12118202567693045 +0.392692304052911 +0.5444636448352503 +0.6094172756411774 +0.5220123163785394 +0.25777903453932166 +0.3372246660986881 +0.22939283309476768 +0.0832511004187949 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.007136592430545121 +0.13826350515673355 +0.38841952400880614 +0.594184438714732 +0.6125761550027565 +0.5689150071321863 +0.46572484268894915 +0.3342902655930547 +0.19368599318967886 +0.0612291217627367 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0018797124142275886 +0.014506917730168517 +0.04348804155756632 +0.07284046224765398 +0.0907395578656639 +0.12073111516454785 +0.2570516441443983 +0.12661815098830825 +0.07038936416198271 +0.03169450489943615 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.003426200132981085 +0.03289797332634216 +0.04808560692779177 +0.06392015380205344 +0.049948243225459286 +0.06053964694339315 +0.0735784951477374 +0.0955601980981222 +0.05876917302219527 +0.015337812658406356 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0036934480418915404 +0.07038121419093403 +0.2338768112213514 +0.2635120189279787 +0.3514147861512429 +0.5249696077540884 +0.45735763829928006 +0.2562011786074968 +0.2841499871803599 +0.10431480940162602 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.014959288671084366 +0.2069066008072469 +0.4725491515706758 +0.6091603996051532 +0.6341358147930529 +0.5487871500289634 +0.29634873646961535 +0.2563294793019712 +0.1863160514614142 +0.1100307498246257 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.00833973963457149 +0.04559182576460689 +0.08099477181730236 +0.12211075232565131 +0.08885677575927198 +0.1196751490198964 +0.05595550430721709 +0.035524177350462205 +0.01637982452958167 +0.010149501285503555 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0063943253303913655 +0.07282998196143912 +0.22417906918581051 +0.3802274721157952 +0.5023708661842159 +0.46597695514951903 +0.35428456720951124 +0.2806959100546206 +0.11983275289229699 +0.0668771920810792 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0018692235671581812 +0.007433457735716626 +0.02682934056873402 +0.04688623328463337 +0.08299922195268383 +0.15569551179503544 +0.18690135550618636 +0.2690091053912954 +0.18870215092705464 +0.049187208179600594 +0.0031697997896901527 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0023894691634126926 +0.011363108244011528 +0.023872068934189222 +0.029960247881583562 +0.04633281934370358 +0.0542985009160666 +0.06437866934818971 +0.06421453570105272 +0.03663492295913949 +0.013109081036225628 +0.000776214216390538 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.018086340206805475 +0.12034102831200182 +0.2045330190586928 +0.2844171085932616 +0.4300231928880981 +0.21161529006007412 +0.1815550729502174 +0.13771321694075064 +0.12143757007137686 +0.09939690071692443 +0.005328402899860215 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.015495555668765012 +0.12005431350882523 +0.39153873469972866 +0.5543674354145918 +0.6467220203258314 +0.6996317975415088 +0.6917003643126027 +0.6028627633538127 +0.4448349766959318 +0.17434454182939446 +0.00934911136228342 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.07648316769100084 +0.2830734573487313 +0.46660536592059004 +0.5295843102921138 +0.4869037659663998 +0.47074043455210274 +0.2609784666425385 +0.1530203651101125 +0.09370437848873671 +0.03171317491730457 +0.003079264429818371 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.003672425291546578 +0.010967837182746144 +0.02683514515036811 +0.04336337778207707 +0.057191571977979395 +0.03851577527103246 +0.037769863572678676 +0.03728120295495066 +0.03643337198880517 +0.01274235983372435 +0.0020387328889948527 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.004870600456990005 +0.02234877256979542 +0.0436377389526537 +0.07634193300413761 +0.091815767487474 +0.08751436626220187 +0.10766583357673414 +0.07354703333201393 +0.049423312343440856 +0.017988216043070108 +0.00289612571448546 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.005168335225892895 +0.018526360262205364 +0.03584925535689933 +0.06913490408330603 +0.07832093428507629 +0.10282571233931267 +0.1002175284703273 +0.10639021266550243 +0.07521402941970537 +0.03895656395901197 +0.006331549515763829 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.011168208281379457 +0.040913252412106554 +0.07254376260733562 +0.09176767304276322 +0.13456173802239746 +0.1461110540192197 +0.13840465936652416 +0.09394524186945961 +0.0685869063563065 +0.03431203168616895 +0.006225053488506307 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.06807915899398609 +0.23441247170612822 +0.44233471406039343 +0.6117517668029526 +0.693765655133944 +0.6873681106337406 +0.6185944522261135 +0.5690658393175161 +0.41723530991726265 +0.19920838655727763 +0.017089283391665173 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.03903248672750221 +0.11245870918722516 +0.338882780107861 +0.4568915502819656 +0.38983974698539803 +0.5389423497846628 +0.5912216565219184 +0.43881057730539963 +0.23545234136490933 +0.11225082332613437 +0.01503746056266458 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.10415467715107049 +0.22503550523304647 +0.5216028387790499 +0.6843109991755291 +0.7159189465899259 +0.7370515186279233 +0.6591795665639087 +0.5579868771415567 +0.4248311249122381 +0.21641365341620344 +0.02104503081736955 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.12120555285475401 +0.34938482169058893 +0.5287119400758594 +0.6609290269240123 +0.7301298407197256 +0.7203182731683294 +0.7169945144585729 +0.6225587484602731 +0.46480034799689973 +0.2322515425097703 +0.023670945992969192 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.11756697913890939 +0.34836654772620546 +0.552368273578304 +0.6870790650238912 +0.759320456291901 +0.7608366319567343 +0.6947455006180842 +0.5477052583125088 +0.35710549539156927 +0.1821772118439243 +0.023156055132557196 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.015724095866597187 +0.03616348075793342 +0.061904378310396746 +0.08253417155176342 +0.1027828534581711 +0.11445141193683485 +0.11769914964407249 +0.09567034420541425 +0.12113937347316027 +0.08189972710460695 +0.018915997856621434 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.11530121365863917 +0.30694441539364353 +0.39263281930318233 +0.42751641153480435 +0.5355433600458517 +0.6063525332084769 +0.6504096971695952 +0.5265422128197212 +0.38567318426377895 +0.15100575478009468 +0.02062146475440455 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.016943646131659596 +0.03868929618293189 +0.07802782714281264 +0.06188070614656854 +0.048734223988848205 +0.049437145366722925 +0.047021538027588655 +0.05604054662446037 +0.06109786066119668 +0.03400143901499459 +0.007051892579276165 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.01990142031132054 +0.04944414353887443 +0.10642706141172793 +0.22338840874372615 +0.42329088826167094 +0.30646266713120157 +0.3730237352759137 +0.3088431600960824 +0.1619289122272326 +0.05267939169555102 +0.011368096224939974 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0014979406541072626 +0.01537230672509905 +0.03250812521605804 +0.06541316579779051 +0.07632769957653404 +0.10423088044902964 +0.13154523725378942 +0.12043235029126124 +0.11126462592446443 +0.08942547592295784 +0.057102852362880006 +0.014157365902944544 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.002378491447941965 +0.020664148427592087 +0.048399799667079565 +0.0706183758382523 +0.11298828420053861 +0.13583084201061899 +0.11635669158322967 +0.16440675802922608 +0.12989558052353647 +0.08392111180217586 +0.04735608652575715 +0.014934081105583297 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0037975699484858417 +0.07000246653003536 +0.1398479503021826 +0.12044116277253247 +0.11448569714695113 +0.12626139022228738 +0.12705007339318497 +0.12326165288503557 +0.11332480605533077 +0.08318939705424412 +0.04436825506951222 +0.012233427497154411 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.00327335056698452 +0.03248247182478999 +0.06219384968894384 +0.1040161078905652 +0.15821622594620852 +0.2587166781703241 +0.22146259182177563 +0.2580319359798765 +0.3326282478049357 +0.31940030915229084 +0.19153610650354894 +0.05873085124107637 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.012470159761848374 +0.15364984382402277 +0.37645543635242834 +0.550465316378217 +0.6582317818713429 +0.7183065043549436 +0.7297459095020629 +0.687091010568624 +0.5910239979160564 +0.4403690511127826 +0.25088051385047155 +0.06562597880244772 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.014241898312514345 +0.15853900806333035 +0.3857279788951359 +0.5530284191476253 +0.6587535940989783 +0.7151480483654162 +0.7199529364372526 +0.6738305022467711 +0.5824408842204302 +0.42721328838143285 +0.24911515904794898 +0.06157394558879075 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.007738514846960911 +0.09315717596791141 +0.21625750888563966 +0.48894946240270803 +0.6332058895732069 +0.6474578333276401 +0.5504452151067074 +0.4767087352189998 +0.4317629535979462 +0.3136917512091833 +0.13672235400349206 +0.013696419764759762 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.016475026429371556 +0.1434268470786038 +0.3295500389061999 +0.5105084487071582 +0.7001125291357311 +0.7955461893766169 +0.8010673668962832 +0.7353794132766514 +0.5786190708085253 +0.38750630396857016 +0.21815143430884598 +0.06331636969601001 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.02013227416477828 +0.16041806417810442 +0.3795991799749149 +0.5122286029715448 +0.6308969333474848 +0.7240145121332073 +0.6404360547160017 +0.6248409059126853 +0.5442642789267262 +0.43361300973362205 +0.220554151564217 +0.05255969306621786 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.013842005532503723 +0.07583272772317207 +0.11398240343978679 +0.22034712775201842 +0.27309954839933165 +0.3617344143930393 +0.2552613326490702 +0.17665904452622574 +0.1534041250671735 +0.1068550729389907 +0.0738255976366692 +0.0262736428510596 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.01697059342620276 +0.14019122302376918 +0.3175872921912817 +0.4181907226494498 +0.5731144192996632 +0.6145854077180984 +0.6522427945126666 +0.700385348173219 +0.5690185506320262 +0.3959460115672419 +0.20485184199891276 +0.06109673023416146 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.026438112575195367 +0.1835681670289492 +0.3715307632137666 +0.5392183294040169 +0.6536040357382761 +0.71196581103789 +0.7062057297163752 +0.661141375353179 +0.5043451021076117 +0.41797834855803906 +0.24224091262854952 +0.07652917983112459 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.026544664197441472 +0.19247707829549607 +0.3802526775957748 +0.542066030744789 +0.6550922934521847 +0.6752613192635206 +0.7049816506770559 +0.668808035870912 +0.5843089543263497 +0.4369529622089445 +0.25431900717305195 +0.07952573153717153 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.02580579852407211 +0.07892991246966255 +0.16743016353171022 +0.3206146213696089 +0.565523887922488 +0.7534234055790844 +0.7632620355646 +0.7173627022826372 +0.6140544363386221 +0.453836798494288 +0.25740486350940145 +0.07754180766675825 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.033612359873436096 +0.21433236962906987 +0.41621946699771556 +0.584247315338274 +0.6952039839185434 +0.7562413401553548 +0.755874884487872 +0.7152390308008706 +0.6229236042023495 +0.47246347853214876 +0.27158450350666447 +0.08349060076230908 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0338242522808692 +0.19042772313202713 +0.39238739888877805 +0.5619452188575509 +0.6525688527099426 +0.7073388139117001 +0.6900846848833958 +0.6650081909002525 +0.5618228564531779 +0.44785284948625426 +0.2654576927052466 +0.08342259680382756 +0.004955398099609563 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.03470537221800142 +0.14230630062000194 +0.3129604275175746 +0.48788738746496124 +0.6912623528319903 +0.7613504119518757 +0.7646195999377804 +0.7184496488495363 +0.6201137510419548 +0.4699536250166824 +0.27881808962482474 +0.08341186750273293 +0.0057494692890373185 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.02479086980109259 +0.08835354605325531 +0.08851254847064327 +0.11949012254808092 +0.09040203169460224 +0.1499349465592266 +0.1452365028021705 +0.19833084001875298 +0.10617467634542206 +0.0647026950981845 +0.05446749062450095 +0.03602703372749268 +0.003757076443763223 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.030389563402727793 +0.12961584173100532 +0.13189946513418557 +0.14200132967089096 +0.13676593887848273 +0.2039166883518291 +0.16217453301988471 +0.17038332970363027 +0.12048517704707226 +0.10024219714071979 +0.08750486285798723 +0.03549146368166601 +0.0047623630042540385 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.020954924857408873 +0.09126556507803085 +0.1920665481759329 +0.28225126355034985 +0.4026960167625139 +0.5063407121081012 +0.5350214087429336 +0.5327201929011278 +0.5088670044951332 +0.32358382506939964 +0.25289816901697154 +0.09283320168079555 +0.008494369255034781 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.050997650843593714 +0.24230309944609119 +0.45491220667573845 +0.6118163088502752 +0.4781047506506194 +0.7075437221144195 +0.6658907470139478 +0.5489750575111694 +0.34437619533621794 +0.28012053275343746 +0.2051774350202243 +0.06317317854450687 +0.003479209851072609 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.03605565558506599 +0.08508689858980635 +0.16067811057386494 +0.19177035382066884 +0.2648984711910578 +0.3290761021941485 +0.3223182081424042 +0.28465737776526195 +0.1723041192136695 +0.14892860344463876 +0.1099035927007051 +0.0468092912367776 +0.005657437578853159 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0225028074406688 +0.08775793961177467 +0.18010711224210388 +0.30102373096944923 +0.4761110667416107 +0.4663485000168711 +0.40229278113301364 +0.3512370894926391 +0.1627714604437881 +0.11867483687942795 +0.08023903372201202 +0.06200394072801291 +0.008114585418662666 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.013665749651678896 +0.034754381166491446 +0.11331627962063837 +0.07229923893680185 +0.10951038382185128 +0.09356773857392482 +0.07571012759878262 +0.06734660875533881 +0.06938930521502601 +0.07808361785743315 +0.04364151943581699 +0.01412901019451868 +0.003606415347932882 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.04858611250025779 +0.10878459526482671 +0.19639607162985145 +0.300813771093255 +0.3482453508080291 +0.4456416849716053 +0.5356789260815686 +0.49772133904927485 +0.3693235373721398 +0.23893160104029568 +0.1395933025387981 +0.062201910940069785 +0.009985929043829984 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.05935993749415286 +0.15254814332597014 +0.2425372566980511 +0.341015130787712 +0.421453948745693 +0.48456036924286683 +0.4591450642813157 +0.375814440113646 +0.2504098979870761 +0.16647041676209914 +0.10251167952243687 +0.03825193810520837 +0.005456337676677006 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0017300273953171662 +0.02275767514299059 +0.12170224823402476 +0.3165045805151123 +0.5173220585343515 +0.6217224214341964 +0.5250544573091455 +0.3941204681975314 +0.47486826265741855 +0.4495149433422752 +0.38268241888977117 +0.2161597808559992 +0.09045460177194196 +0.015665432922899424 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.007461741771742755 +0.07913039333642718 +0.27486917603549876 +0.48455337860560627 +0.5984033461419161 +0.6042451829215755 +0.7147048310883934 +0.5888289569908134 +0.30574239347925647 +0.3674762766445663 +0.2587688349476171 +0.1816896903459918 +0.09464499643492578 +0.01985261275617401 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.00896106270720306 +0.07113064721943295 +0.22330237239800696 +0.35488053667498903 +0.5263221341216089 +0.647223557137187 +0.7411196863715175 +0.7587350289052515 +0.5579865863201326 +0.25949120197876685 +0.12958543600867534 +0.07824661445847701 +0.04964578460456514 +0.010227661966886513 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0064534091387600245 +0.055520988695481895 +0.08676598759938074 +0.26810865564629405 +0.34706768015191214 +0.29355424027631877 +0.3008219449824884 +0.3719330670367858 +0.2904453873398551 +0.17432647674872462 +0.1439972569658836 +0.14657045126773585 +0.08087146431061197 +0.019279925690030134 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.00848741068445454 +0.06173128584528657 +0.1649458854857293 +0.25490204620163387 +0.33366990484106585 +0.45555405401968485 +0.4608772306338298 +0.24725462614820923 +0.23200820719063442 +0.1604365978516662 +0.15123667378350203 +0.08262002882252692 +0.042067712761296956 +0.01104903085969782 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.005236392381890614 +0.04142287989702057 +0.06407559971033962 +0.15795097137218958 +0.17688490565546378 +0.2238170458116205 +0.24954286496947195 +0.2808666587361939 +0.2785255446687182 +0.2548022368819199 +0.19348047397565496 +0.14630380671233226 +0.08313808845577635 +0.019133844327719675 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.01127461925572336 +0.0583792455242092 +0.2043339389609778 +0.3523901367363061 +0.35529794064312026 +0.3930754156876231 +0.5747890463092854 +0.5721407397651741 +0.4624829829344518 +0.5259973035072196 +0.39508448884138947 +0.22272071839818447 +0.10723531470876528 +0.01912829385471257 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.012849102002505712 +0.07337863516476255 +0.17927967694545632 +0.32955986367729073 +0.48196126292673325 +0.5966911947074109 +0.7159358303561797 +0.5490994479433342 +0.45157185104292946 +0.3508473553671755 +0.29893566949009764 +0.20091062852783326 +0.09524417913834901 +0.019015190845301025 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.013457315091384914 +0.06013906205187812 +0.2511228547005348 +0.43795177446179395 +0.5229160359208344 +0.40180186369108956 +0.489684233347 +0.4629605281862468 +0.40740817399036433 +0.3577458701134867 +0.21384454625656238 +0.12268260907917791 +0.06914611401626432 +0.018852386253221855 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.011344653580289753 +0.0668317498503093 +0.2087852260105481 +0.41746912427617194 +0.39597980340201533 +0.5683845188736228 +0.6171822495772771 +0.6540486383186815 +0.6309489276544349 +0.5387689605842783 +0.4816338417536871 +0.29786037221042644 +0.11743596704747337 +0.01919670696216024 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.018355441899503926 +0.09996060379519658 +0.2743057957986636 +0.42183312637331066 +0.5772295091130849 +0.6348148575093773 +0.47502889979913354 +0.4888456502097608 +0.4627918197683702 +0.36789207621121967 +0.30401966501355354 +0.19377576283615744 +0.09126924814838493 +0.023954927676531023 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.018324629080031258 +0.09108658969073365 +0.25875262674310306 +0.4326586795697744 +0.5780462398033879 +0.6800060670488054 +0.6508547232967521 +0.6020735782595698 +0.48848962991040257 +0.31038197484516494 +0.23327595524543862 +0.16518671166352333 +0.0887986899411508 +0.025150641295268717 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.01845591098102201 +0.09152915912835248 +0.2622978884621665 +0.45492876704413576 +0.6150365743446836 +0.7180251197395972 +0.7817967699333643 +0.7780106180139463 +0.6851220618774075 +0.5238978058559454 +0.39250979281014486 +0.22429618882108482 +0.09653494111590197 +0.025997690960200586 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.016932945452048917 +0.09541359547708884 +0.2796497550984964 +0.4273425646329061 +0.5542292278086233 +0.6561166983440909 +0.7063025484951401 +0.6389096725330572 +0.6083912233687825 +0.39580735354859087 +0.21666413556302877 +0.1281686136274063 +0.0842027597353642 +0.028604785049146222 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.020946333742771727 +0.09373887270740375 +0.2886172412051742 +0.4693720146440111 +0.5849678490584035 +0.6883652851469371 +0.7225869257264027 +0.7014607792877172 +0.6722868915355488 +0.6333873750831882 +0.5017221558337133 +0.26038700810244597 +0.11521719469669381 +0.025232639698770647 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.010277783689799083 +0.06567775523025446 +0.1973608347352324 +0.3877033953715293 +0.49881203956033304 +0.7169135884567541 +0.7559868639925248 +0.7147803842439405 +0.6507846136457547 +0.5828442823224026 +0.451468291940158 +0.2678144024046453 +0.11173969072698153 +0.025118801432371794 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.01973979474490332 +0.10379551462880837 +0.2926728106733491 +0.42813304957309817 +0.595333150564055 +0.6574024705679962 +0.6775615622342812 +0.6917870456549751 +0.6245643290739747 +0.5045926708892641 +0.42094634854566004 +0.25404709508186263 +0.12726310077630373 +0.02631163506092124 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.026692886686826116 +0.10136711830486088 +0.2270164672356163 +0.4733247975566425 +0.5762877672096309 +0.6234401890521691 +0.621758363823621 +0.54992222580626 +0.2650256198062725 +0.2703178491907373 +0.18595430161598198 +0.09030270773887095 +0.059423693396801314 +0.020858191889314644 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.025280576905998896 +0.097152989039515 +0.272512351645245 +0.3978538320845248 +0.5333488264074012 +0.5429911885107871 +0.5883597387836677 +0.47399241180663393 +0.4719293862747291 +0.3860548315536474 +0.24872359539900257 +0.1834229307189312 +0.11825367718650713 +0.025430896460644177 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.022047667475717053 +0.10774069672509178 +0.07580866178667797 +0.21923195369156653 +0.4365764938156037 +0.5422235393420967 +0.6632320102639455 +0.5871505854586718 +0.43180725327099423 +0.33296488365392585 +0.21800850661460794 +0.14659973375785917 +0.06565220185154651 +0.016761667937661734 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.02621507235905071 +0.10830675694621056 +0.2186672189361612 +0.42837703365301777 +0.6015865620428597 +0.6700324025897884 +0.7335546254618758 +0.7344709485958401 +0.7002894876481478 +0.5818677821422701 +0.4203342051232291 +0.252075627437469 +0.11844909528270028 +0.033346832574155785 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.02808990658999633 +0.10733951272071925 +0.28262207040891507 +0.45347755416722685 +0.59767510405389 +0.6839976817179741 +0.7285129272588868 +0.723853706564471 +0.6791285282524645 +0.5916049194648896 +0.4606661548276729 +0.2957548015792229 +0.12226568230581064 +0.02991853271752234 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.027896575251693624 +0.1073363392341665 +0.29375471337071807 +0.45030052099148454 +0.5502987917308656 +0.5793023800848862 +0.6111092822685652 +0.49907356079882886 +0.371926530860239 +0.3537297605185071 +0.26602907472066584 +0.19383725559333886 +0.09477115687435873 +0.03721714015906651 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.03468445950521822 +0.11391706746704758 +0.24491342123051518 +0.4115800532245329 +0.5024702603686552 +0.5995021226527331 +0.6434739598233913 +0.6289129226768465 +0.5931313124520791 +0.49012633956947527 +0.3510840651371988 +0.24987518231650482 +0.12051528433264386 +0.03603777265699661 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.031072715664116013 +0.11954662119256697 +0.2914936701806611 +0.4663898220728991 +0.5982208413771102 +0.6851118763696151 +0.7335778608723648 +0.7181187741208176 +0.6798136274877681 +0.5927039535016434 +0.40552426862411406 +0.24946434411980187 +0.11911925464818808 +0.04093917059587245 +0.0035161636582959777 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.033513232746122064 +0.11395989795158434 +0.276674277780318 +0.41616556964202045 +0.4538379915033209 +0.5645894272024836 +0.6480697661492525 +0.6893387606819757 +0.6734123971082973 +0.5841613790967468 +0.4614526872959056 +0.30986056417036967 +0.12903050352166678 +0.032256246643038895 +0.004453696645738424 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.03388791016657543 +0.11496686529790652 +0.22260685590889848 +0.2772153101128025 +0.3535724236562127 +0.3909148992270198 +0.47021691727151343 +0.4063216326908013 +0.4677853627556116 +0.48216049811209566 +0.33182077275479177 +0.15965155646637508 +0.07558174823329593 +0.028100634137589443 +0.0023369272482050667 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.01927899498437135 +0.08844691095860466 +0.21883226943686943 +0.3809398258743142 +0.5105916591580648 +0.5498114547352567 +0.5310471532959994 +0.3963107818913491 +0.49948954926193684 +0.4677025193716096 +0.31977305117213234 +0.23329211331263927 +0.12663048752343642 +0.044033342687027036 +0.005425603402678851 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.00391986899608708 +0.043757550137778725 +0.12019687084665631 +0.17724973974678476 +0.27239813160830906 +0.361539913531094 +0.3240504803480587 +0.31569102858431874 +0.22533235637966953 +0.2044902739646729 +0.2500686510496885 +0.23611442010673575 +0.14391198895074925 +0.08517136381014755 +0.03093742265838233 +0.0034607276258350195 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0013790023468095755 +0.02525992299077089 +0.0666603708999105 +0.12959445281343043 +0.23101880110392817 +0.3747630636655037 +0.3197972765345661 +0.33700156121071234 +0.2781035762171147 +0.22566334879097658 +0.20350873037832448 +0.14278868981202905 +0.08978518810064814 +0.07167227699740022 +0.033552130681289746 +0.00490997985012017 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.004452202661539433 +0.041959279374100884 +0.12091488959772462 +0.2732124871180389 +0.3765064756350737 +0.37372133867544455 +0.25836885824913086 +0.2044033725567494 +0.20692876461643328 +0.17640951075836198 +0.11614905127033812 +0.13656075296982495 +0.10267425873985313 +0.09456947711563363 +0.047698110411876486 +0.0037292210161307348 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0028988041069440327 +0.04347466401588335 +0.11151461189621381 +0.25925850568926123 +0.38601445568424975 +0.5550486903442673 +0.6646287352262661 +0.6674784881634895 +0.5255179248525105 +0.4670743733394658 +0.41901248624002685 +0.3555129589658947 +0.21782286995383923 +0.1357190306546906 +0.04850235448480399 +0.008578749224206818 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.007351704641319267 +0.04579684331514662 +0.1260017387013496 +0.25501531196483307 +0.35290525457969946 +0.37245577065132124 +0.365467353765955 +0.4684170658501026 +0.6077077693171018 +0.3223256686593113 +0.3230704764874781 +0.312703808993997 +0.24622967555253275 +0.11697622035100748 +0.04791590090601841 +0.008188390410592014 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.007895241478479609 +0.04715033567344308 +0.12345900977269411 +0.2809194660081872 +0.4116873496657819 +0.5490050245540614 +0.6463796075027168 +0.5724579739346587 +0.5205333824676145 +0.31159968113701325 +0.3057584723599155 +0.2828166868801905 +0.2121001558206616 +0.12052812619792946 +0.04870850791767081 +0.00942667258284976 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.005080957780511307 +0.045812952460667425 +0.08975619190300221 +0.16917056533628927 +0.3543787538772684 +0.48418784432876333 +0.5587774831609312 +0.6306325449393652 +0.6358763120578502 +0.5926152744836728 +0.5259061258049879 +0.4114397859012403 +0.15107853341292446 +0.11352144136280443 +0.05023074412957206 +0.0038773668629170106 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.006167043518732412 +0.04844291505425415 +0.12226897087862437 +0.16451039427730973 +0.28291664569177866 +0.5095914091227551 +0.6364575965920864 +0.5625110830701802 +0.6156076358744067 +0.5337820722759742 +0.5199892341461251 +0.45509758592606875 +0.314331713234992 +0.1498810564256133 +0.03902581704480508 +0.01489115224119736 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.008737234412549384 +0.050507771555803556 +0.12418924025324977 +0.22514632413519212 +0.21830117324129628 +0.24858872316287714 +0.4831640280575176 +0.46939135211621663 +0.45939795743243156 +0.41886615178371306 +0.4273274199929299 +0.30881554189102034 +0.14613110019843034 +0.12099145051439023 +0.054841902564052206 +0.01317627087557107 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.013260738423152948 +0.046561684479360335 +0.13454089034736835 +0.324188492451526 +0.5024225412252952 +0.5352951155175388 +0.3776603992975717 +0.45499548016832014 +0.38595618080422595 +0.4712722986487319 +0.3464571671414771 +0.27504041270581 +0.24231906404471903 +0.12647634719165002 +0.05716469260472601 +0.01590663075149796 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.010096729535348488 +0.050265970527226124 +0.13305533731595146 +0.3059516350373744 +0.42588034875955205 +0.5263586985279256 +0.4768313732365979 +0.30118035558531875 +0.3459572833400002 +0.40138308675761486 +0.4370636550024522 +0.3636954504076117 +0.29972952210872095 +0.1379753273552494 +0.05707385798700358 +0.011868102388304061 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.012393819968533702 +0.05186176851605677 +0.13976741327536563 +0.24834119119575485 +0.3082451282316586 +0.34931365876763226 +0.4510685458085873 +0.544275252642491 +0.5168792090094031 +0.6136796800900329 +0.5153699314945848 +0.4076176130769672 +0.25609032034248663 +0.14591130068629163 +0.04732636602672975 +0.017896225033773316 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.016965117633968185 +0.04216204443084037 +0.15369660563173568 +0.27974265721987845 +0.43385143416291666 +0.4865632000395999 +0.45754989854215117 +0.52814774157107 +0.4671171146001656 +0.4761675670868046 +0.4650065735218756 +0.32683011471777385 +0.23560771694759125 +0.15326791213130234 +0.061320417203022504 +0.018234117653007833 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.015991267915027665 +0.04618589182756793 +0.13659934132003074 +0.26815548057044697 +0.3777794697206444 +0.43988057520473356 +0.46716409081697524 +0.48949868772977734 +0.5589578069827803 +0.5366982613224769 +0.4177694969817014 +0.2819703985290894 +0.19254942994884408 +0.11856564489579909 +0.049748186234489566 +0.017459779127081857 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.014371778072400573 +0.05339555829118722 +0.13528028026404654 +0.2987736446716992 +0.4404542912783768 +0.5596206886692556 +0.6442671128718236 +0.6965800247409806 +0.7095961097896716 +0.6688050094392035 +0.5890547664007816 +0.4701963282369902 +0.31659321822772163 +0.14734821142605023 +0.03785534234831743 +0.01692572695820684 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.01898430557719202 +0.03676688338407885 +0.13548679044277126 +0.31331965230274084 +0.478534601652343 +0.6077908245453243 +0.6938748843156192 +0.7359881328153824 +0.732992465596106 +0.6881293660705706 +0.6009347649544545 +0.4752544268244178 +0.31625918211999415 +0.144948058111217 +0.03345527416597476 +0.01621500420019501 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.013814407205042649 +0.05826143140103059 +0.12255108695668172 +0.27087746980476407 +0.4266590321200877 +0.5658579870925741 +0.6589881256047109 +0.6834909023973483 +0.5839396474363714 +0.4491980858293424 +0.34376130358426205 +0.285757572177496 +0.2566608590987408 +0.14094932713905764 +0.04670302214989193 +0.014841691327257713 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0194965281496185 +0.037055613041371324 +0.13377134503111687 +0.29395900395280594 +0.44715461008601604 +0.5782827427563418 +0.6605787580487854 +0.6387281272756237 +0.5669538446373799 +0.5788629808023626 +0.438197438491421 +0.3598965792382779 +0.21750352498005693 +0.11142440016720281 +0.05755608776276949 +0.016121459004393393 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.018034537653705583 +0.042027611541601846 +0.13503691922628086 +0.3057617028841916 +0.46806315059615655 +0.5716375001193472 +0.5993990057744223 +0.5956231663766011 +0.5413435729340842 +0.6050761645731251 +0.5027671081704597 +0.3270022944753614 +0.24560002855558327 +0.15342241148733357 +0.044894195207363215 +0.017489633687110887 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.017031787664334597 +0.031645214669958115 +0.1405287116656077 +0.31948952084375876 +0.48818147964490666 +0.6211640682134767 +0.7080712993011714 +0.7495708041375645 +0.7484896392922253 +0.705356421543786 +0.6166281846662044 +0.4944609933294634 +0.3311734759019144 +0.154962533372462 +0.03900979033605081 +0.018766727632370195 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0173267181199516 +0.04318448204076683 +0.14523483876639515 +0.32247869635682547 +0.48866178304893776 +0.6193945471715536 +0.7040260195848798 +0.7447371652685364 +0.7455719274194009 +0.703322099196644 +0.6179882091628169 +0.4914285522615944 +0.3290610827836924 +0.15368460996338035 +0.0365860386598832 +0.01957958459700513 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.017094540731432285 +0.034593235042630156 +0.14182503657489218 +0.3032769631625365 +0.46321278147177236 +0.6096845384351445 +0.6997996891161804 +0.7366938554015399 +0.7374581144455515 +0.7007674038554478 +0.5845422233969995 +0.4344006093312347 +0.26469136511845576 +0.14672815802675648 +0.06484593262071084 +0.020835643090158805 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.017530036642601367 +0.035782634819979 +0.14102783729381388 +0.3141240827717866 +0.4716587114507328 +0.5977866146539603 +0.6782554692193593 +0.6680757884033527 +0.6560455880181939 +0.612198238624044 +0.4283278986496455 +0.3107928749087155 +0.25394822004993783 +0.13240105677422173 +0.06890550740110536 +0.020894177038755693 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.017465611516959332 +0.06526848363481715 +0.14119696580380517 +0.2601650684707417 +0.4386736727500196 +0.5547350222355792 +0.6265459472149958 +0.5180823291071066 +0.37886525261681847 +0.2900580395893021 +0.23246022524420906 +0.19451983609869675 +0.1612011902368045 +0.12656685157469597 +0.06958817467675445 +0.02229043888589038 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.019097258913483562 +0.0614232721036766 +0.1411183941794785 +0.2861228755712968 +0.45503714152077335 +0.5299550490247377 +0.5801187566171963 +0.6654989990250916 +0.7430490345458075 +0.7348892278840145 +0.5966697474026714 +0.4233719208003888 +0.3077536342919406 +0.16061881624608498 +0.0470530396715376 +0.022066469277517327 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.020435811531442975 +0.04917451298615733 +0.1432128623969196 +0.24425151863769612 +0.3001233467589032 +0.35708700766049795 +0.41653493067987685 +0.5393918245075384 +0.4460341548867013 +0.3488166928203865 +0.21333237601396224 +0.13669340449787823 +0.13362092700256464 +0.0964059207155008 +0.05284708035798619 +0.0185893835152242 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.009717287926105532 +0.036874138042655186 +0.04145230225549262 +0.09732713469052282 +0.10161432347106782 +0.15571174163167123 +0.1817001074148868 +0.20081510438620523 +0.27185960809993054 +0.3388341927285512 +0.24846735050674673 +0.1730675825183957 +0.10581688038822126 +0.08650590313553967 +0.03626799122248619 +0.006702006699584627 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.005016211883205404 +0.02057167358265336 +0.04839496645709317 +0.1734582408311818 +0.1919191346263072 +0.2110658345454951 +0.32249632881058604 +0.2752293049657511 +0.3125303633057911 +0.4055690989298051 +0.31550422906551406 +0.28434958876466654 +0.2672315552262052 +0.1644595017739964 +0.04439161550022753 +0.02449429687910915 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.020469420722132575 +0.04894800100771579 +0.14490068263402398 +0.3101733717096317 +0.3354385490320039 +0.4827656084354362 +0.46750478611039337 +0.5591802947336216 +0.5098974507532633 +0.5417487618112559 +0.4713574752546515 +0.40464897604906214 +0.24570318908132854 +0.1316348386331202 +0.07581676869939806 +0.026934085458193775 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.020919796235155833 +0.05234824313123815 +0.15835244492678374 +0.26908458606158203 +0.3584252511932386 +0.43118519020141055 +0.5385041610209318 +0.5904864931297639 +0.3007669521058879 +0.2040387527561724 +0.12522551895671857 +0.067706465479053 +0.03528159858799031 +0.02224818336272134 +0.009046517125455008 +0.004868918811795532 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.004994197009234665 +0.026515848114628083 +0.0622873089427095 +0.08521517480524503 +0.1239516926608967 +0.32946362396474016 +0.5278899039239274 +0.3414696203271237 +0.3094877221064019 +0.25011988979140704 +0.19540474605396083 +0.15270253177189638 +0.15602081182706717 +0.09821314808212482 +0.054953943674627644 +0.02540668362282496 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0028889684246464994 +0.010723560499810325 +0.014528216380800221 +0.12644191167070315 +0.2682714463762785 +0.464824110864704 +0.5124480008171722 +0.5446867810548469 +0.5361564016958285 +0.4346226494050554 +0.3371502478617711 +0.2461585979308795 +0.1595715470148025 +0.11491134098253299 +0.05627268535438207 +0.02730522704105478 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.022830295108552896 +0.07079412480185765 +0.1457989739238122 +0.2710034257917375 +0.38080269904985903 +0.3707980923833084 +0.35553537755983244 +0.42481610117318536 +0.35344472216962536 +0.2975617180447417 +0.27693689682746825 +0.1681485474266618 +0.1228146623303917 +0.06887009610623254 +0.04556567834803141 +0.009325182586107907 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.02173287345631828 +0.044248763070350215 +0.14401804769993046 +0.31299547000801253 +0.43997152462864975 +0.3231755118273629 +0.27194776707191765 +0.21958015607809636 +0.2887373007542552 +0.2924175965559795 +0.1947998373602734 +0.13352718827075655 +0.10783740503320491 +0.04676308262391961 +0.03466192281077401 +0.027564981232599258 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.01350570314358307 +0.05346109148159142 +0.10692950079680104 +0.27617522037660425 +0.4470073351313338 +0.5560896908105531 +0.6176959252978119 +0.6834967846101666 +0.6728957917945253 +0.5129087762253731 +0.33008274972322776 +0.2781931352107979 +0.15512660000745496 +0.12592449632052713 +0.07529302330520789 +0.027115957663993596 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.022847866482124696 +0.0699799908732501 +0.14200542855111634 +0.2985363476670383 +0.437764063948031 +0.5845985677159571 +0.6520973667094982 +0.6556456229881015 +0.5406267671790229 +0.6103998447152551 +0.5315741207122885 +0.40549119952782886 +0.3129183987467623 +0.16308980586124458 +0.05460728309094641 +0.028456944980557616 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.02418979339031112 +0.07100574888930934 +0.14569165898029268 +0.25272363004452364 +0.36196254928392607 +0.4785076846402036 +0.5860174652143516 +0.5656358744594385 +0.5373771501144198 +0.4385480041250937 +0.31039600054645966 +0.18895166867333202 +0.2050330678961053 +0.15626504965528917 +0.05881688391805074 +0.031067691313259396 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.021651485971368747 +0.04291216459561257 +0.14053224713057139 +0.3127438163571842 +0.47241352954055493 +0.4845681522276716 +0.4974788808917844 +0.5123111550608035 +0.5521247650427459 +0.48523843812050016 +0.44428044258490273 +0.2948524072522816 +0.25362674206181224 +0.14143606457278804 +0.07477719255640644 +0.025301809037502787 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0187445640025593 +0.06740038795486918 +0.13678905985399514 +0.25530044825159853 +0.3854602582988704 +0.5173768440351221 +0.5781668924666125 +0.5938414933197755 +0.4619686081771924 +0.5265234642974039 +0.40894885696773814 +0.3428508499638693 +0.2933080650818091 +0.1560149344886205 +0.07984649075868369 +0.030429277743306664 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.022256220962460556 +0.04914835832552816 +0.0757985488253182 +0.15110438831621867 +0.1975991014171762 +0.24085360493324987 +0.3145543202517912 +0.4317712992130946 +0.47598190464379275 +0.501756343973667 +0.390176073413796 +0.35400989343837047 +0.19281579841033517 +0.1047813573412515 +0.06039862288161632 +0.025227315884141933 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.015716981844590923 +0.04801777385587417 +0.10867196255293052 +0.1551923838277958 +0.2607169519801688 +0.3376947016782575 +0.3697865011520963 +0.3341468371446124 +0.37567895506418086 +0.36034792652230624 +0.2154304769350072 +0.20824863990221656 +0.21208378853458604 +0.13830655220631755 +0.07552720496461145 +0.03151216229161314 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.022988305673231506 +0.04960479515562807 +0.1423700409295553 +0.3038526635095077 +0.4600136992869104 +0.5895968077586379 +0.619243370391517 +0.6079698132872688 +0.6465075420906079 +0.5979507484980424 +0.4372638154627308 +0.2357627714140157 +0.1206703550316194 +0.1238612444022306 +0.058545339960608574 +0.023940536010181108 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.02232668984791835 +0.06084986797243004 +0.09724231550727305 +0.19247306480529439 +0.279396796062812 +0.29103859355835754 +0.33871361319135157 +0.3489414186577995 +0.4900164908263165 +0.34597532425604177 +0.19205595274025633 +0.10347041928131868 +0.14498734682446565 +0.12928809569403993 +0.06262362569286176 +0.031504904281990674 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.022497125945945867 +0.05007410209843201 +0.14070208108383583 +0.3012626999804095 +0.44631154027493763 +0.5341389667362113 +0.4196113969968311 +0.5660528586066688 +0.6051088246416951 +0.49423491913455375 +0.5408093388637363 +0.43157691556206457 +0.29497581628728997 +0.16930072296699059 +0.05987735405851052 +0.02987866311371354 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.02218566778526802 +0.044435702403351984 +0.1374047691198459 +0.2655251081417297 +0.4171216573383415 +0.5534438236771266 +0.6464927383514608 +0.6821023456659845 +0.6894541431250889 +0.6046090537752792 +0.5758218270574814 +0.3372805297737309 +0.12280161421502002 +0.06367407189690354 +0.06982801939444154 +0.03265495609767345 +0.002324624576229394 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.021808532671181196 +0.039770413069461885 +0.13494275453121385 +0.2940130486510433 +0.46204544762989097 +0.5707343225837694 +0.6592077402993923 +0.6286938361454051 +0.5242851181550395 +0.4778408809132733 +0.3167960506377304 +0.19669605656647368 +0.1691578562405964 +0.08511663161689605 +0.07800923770598771 +0.03172480882972078 +0.0015519569222937316 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.006617126581003918 +0.02273873026401606 +0.0394426012600521 +0.16054618313629265 +0.10270079432200135 +0.2039301762022851 +0.1767576192204388 +0.14208515537008287 +0.1857455513366572 +0.16038999337903542 +0.1238687438211233 +0.11574165745619026 +0.08096512668511203 +0.033033644936166166 +0.0141809421328402 +0.008608003064474143 +0.0004369645964883316 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0029902129051094816 +0.015307665064913116 +0.04010751677379934 +0.07234045144492264 +0.06780298039644353 +0.08349216575299459 +0.07297598426959599 +0.10195399337886366 +0.09920882706859616 +0.1294891407509104 +0.1553017435342619 +0.11980248785796573 +0.08966595318906832 +0.04450014091738994 +0.02486977903355553 +0.009665891916660717 +0.0007477585906466809 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.018854631464674892 +0.06770057325845578 +0.11725874429702277 +0.09005303095636659 +0.15796300136669528 +0.20840538916154425 +0.3855649779969362 +0.5752681988506708 +0.6896840803323161 +0.6668894239554616 +0.593453515829045 +0.407810585833332 +0.2657983829236784 +0.16865550704870394 +0.05440126925570202 +0.035816881951508846 +0.0028080098669880198 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.021475371502135354 +0.038173403150293446 +0.13251302124974237 +0.28616305382704094 +0.4379119631730988 +0.5980690684429506 +0.6321530768483454 +0.6803226005694007 +0.4434055664662217 +0.3859893931391113 +0.2862665836854537 +0.281229688031874 +0.19309762699543986 +0.14702950794139974 +0.07799244677637669 +0.030249997196585866 +0.0025783442087066516 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.023587023334745123 +0.0675116399170122 +0.14843764810871812 +0.2362076797565095 +0.3614587325391859 +0.4199347143810187 +0.5719527575244217 +0.42865333062598254 +0.4192049496236588 +0.2815429673143386 +0.40667052230812073 +0.33721800230671906 +0.17996854899067086 +0.09229057324124734 +0.016240544361951208 +0.005637312145680321 +0.00019632187429353983 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.019690398935852383 +0.06356203429878339 +0.13675845575486795 +0.1660804891190997 +0.24695890695534703 +0.3907333712270281 +0.4113760983287571 +0.5470605312902153 +0.6226819751884304 +0.5452052435723393 +0.3819646822827951 +0.3176064495785783 +0.21428804644339006 +0.12760421708818628 +0.07637727939418823 +0.02291438964162015 +0.0017708842481498764 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.01910726739421526 +0.06801874099896141 +0.12683513917671504 +0.18127310874059388 +0.24689446315858019 +0.22259051030412647 +0.22402579950028798 +0.23364840563730618 +0.23590436539274573 +0.26059496904121804 +0.19352678306415352 +0.2250643069471898 +0.12873864391593812 +0.11383407523693555 +0.08237087757810985 +0.032906884917024405 +0.0026934665168155516 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.02007663835015707 +0.05059933169032598 +0.14265336245979962 +0.1837512333819707 +0.33145360837272453 +0.37405077537731957 +0.4328612181773095 +0.21095665682405498 +0.22521343588082346 +0.12600734497301758 +0.07886634687643664 +0.056401537058908324 +0.20002868378121455 +0.06393269819255584 +0.06340966630356604 +0.008339350449404502 +0.0005891754422051241 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.008376321571080285 +0.03284585606871294 +0.06601271697595755 +0.14366662775280867 +0.23189692996700975 +0.4285187336330717 +0.4723592703563321 +0.45724106964976685 +0.484200283566527 +0.435752426474169 +0.37430178603124703 +0.3220711795511786 +0.26155227553781907 +0.14870685292090138 +0.0784081775023624 +0.02741718320698366 +0.0026865682713352935 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.02005556958119611 +0.04297555334851429 +0.12871940525836617 +0.2850968618638839 +0.4293786414735227 +0.5299888852643782 +0.6022568927346453 +0.6258967257381444 +0.6460750220771657 +0.6055965970006895 +0.5049669744879812 +0.3670348583189538 +0.27428244002018365 +0.1612526747021473 +0.07683058591001819 +0.023984296875945228 +0.001883372957572905 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.02079094238696583 +0.06477546409800503 +0.1315200741826339 +0.14639534595113432 +0.2739345782709039 +0.31647478697575 +0.4060939007270119 +0.5613855155021278 +0.5730361192684624 +0.47401386893786995 +0.44589505967220555 +0.45416743809844645 +0.31304814162340344 +0.17155863428838922 +0.08073367644685306 +0.03418373609307162 +0.0023179208898063343 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.002155322608616825 +0.0041713131672416305 +0.10624890404553246 +0.23180091516647497 +0.2919682662242662 +0.3955612468262889 +0.45404321892315747 +0.5413759650160872 +0.5059114620283987 +0.3758154600833735 +0.23433208937240976 +0.10674452493044119 +0.03217446454018555 +0.03158150741292656 +0.05314441625771177 +0.030851742418214843 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.01906688789161134 +0.04170032022022702 +0.12605750952345438 +0.2963701025559497 +0.4445041451016444 +0.5635995590093454 +0.6632929383112074 +0.6866201300624724 +0.6997683904308273 +0.6412729752575113 +0.5343521701597127 +0.37279992026995024 +0.2177360398596612 +0.0823596009168616 +0.034636353544852345 +0.01969934486176152 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.005417650436682339 +0.017400287724336636 +0.04775297180387325 +0.09688697169288714 +0.1687134117561972 +0.2679409349901136 +0.30001192266805937 +0.3111220786680548 +0.2677198629279127 +0.2712980798956766 +0.23416372319169915 +0.18059697882463727 +0.12150948864223633 +0.07071445196909637 +0.035889684347724486 +0.030621010887505757 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.019257338955203193 +0.06766362009298817 +0.1391058965281493 +0.18879712743103538 +0.28135353555807696 +0.3423624974077939 +0.3248365642175207 +0.36681113711183316 +0.28915431532581376 +0.28607532092112997 +0.2554010041537234 +0.19828913657815436 +0.22730663911719576 +0.16959987976548604 +0.050605833623979274 +0.02854200824577297 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.018001929526630676 +0.049100715723979796 +0.13725615255586884 +0.1476541601922673 +0.22530834008600026 +0.28258870719861956 +0.38539366301194 +0.39670827621743265 +0.4819597439697446 +0.4794801909902692 +0.43601771361399616 +0.40325738362275887 +0.21356709362138762 +0.06353184834481578 +0.04561268817383543 +0.01330756620307118 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.008973589450227547 +0.037412935444188083 +0.07842758263743835 +0.12728489566470697 +0.24457741621568468 +0.22181758036123106 +0.34428273459954273 +0.384807552756609 +0.442370010595811 +0.49459288840180365 +0.5288340877962481 +0.4709685660534874 +0.3295236330426624 +0.17077367879019245 +0.07425620686108267 +0.02726036084656498 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0011988993538181122 +0.007855688736061005 +0.02034889330886351 +0.14556487749095554 +0.15803518556723323 +0.14876610940609147 +0.23247835304989967 +0.3609210269991549 +0.4735839360121787 +0.3850285436439385 +0.23785657715376743 +0.0914581870199408 +0.021593005371774682 +0.04128600426647223 +0.061444525363307925 +0.0316014503946165 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.011842123387877174 +0.05402013262527714 +0.12000158048602509 +0.25225756813071154 +0.4119183790420727 +0.559578380621376 +0.6324403233982802 +0.6271803370387262 +0.6389368207648329 +0.589739253682878 +0.4466527199591741 +0.30728676267915944 +0.16521808389741133 +0.14563510171855323 +0.06467258077720944 +0.03212280181904937 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.01697911133307738 +0.03691311174047841 +0.11961259507063159 +0.27850106992895807 +0.40472344473517113 +0.49787134792935794 +0.5157977374289683 +0.5102748923489014 +0.5136846412804401 +0.3847397260951934 +0.45003166300987946 +0.3389919810515311 +0.25450322936230724 +0.1762525893553852 +0.08391751687177625 +0.03158973088111911 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.017123176798924666 +0.04648810016292092 +0.125233872416958 +0.26871957963973186 +0.4042482384987334 +0.5023941563964622 +0.5944884920934371 +0.47165479187716286 +0.4721838177090506 +0.4457696233466367 +0.375349188415951 +0.33002303636099084 +0.28014349211285755 +0.1720066490380866 +0.05624096612283746 +0.030544905982025455 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.015793093014241012 +0.05917124604985329 +0.1311015397239525 +0.23092230750137718 +0.268031289695215 +0.3838455630772568 +0.5489573957366919 +0.5889600670917382 +0.508090515656117 +0.5073249271049548 +0.47403134194999713 +0.35135016861611384 +0.2503258105129995 +0.16650223996218183 +0.07676326753625996 +0.029388467521293215 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.018456886932826877 +0.040453342040457294 +0.12147259136592396 +0.2557680852023516 +0.3882402714100888 +0.44867323983246366 +0.4585927676674056 +0.3966548635478342 +0.49296347811984204 +0.5417699821701908 +0.4335606585947274 +0.14696454768589207 +0.20703710629890731 +0.1705688767745879 +0.07095993110434928 +0.029576321486335877 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.018477324537678273 +0.05835493066515097 +0.11420264623210394 +0.18621236334587712 +0.2522531431137024 +0.2673925368175105 +0.24629080929129113 +0.22818403261092396 +0.1797457908300623 +0.09213016467505905 +0.10899434532070269 +0.11754055725523223 +0.10798257456685519 +0.10805878350442875 +0.06415020409732798 +0.027593101646448764 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0054026366564518076 +0.021055184249883736 +0.03906395334315112 +0.1014066970021604 +0.06458260208261057 +0.07405858703106595 +0.06764853571790584 +0.1013461515505821 +0.2335331750829417 +0.45804961499320906 +0.5044948312451422 +0.3753519932626768 +0.22166641278788146 +0.16105013261590162 +0.07920942702120214 +0.030343611182745204 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.014188806516062177 +0.05038761011321431 +0.12144673646272217 +0.20129546677128296 +0.07280460380835979 +0.2629075662384417 +0.244039720741014 +0.30005746612182577 +0.3384644302062653 +0.5345499737630264 +0.38049484503628883 +0.3140177764875776 +0.2519292614148418 +0.14647070324745562 +0.07754579297596341 +0.028266096271000865 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.012052341842408222 +0.0536735854316677 +0.1316297657933804 +0.2326491696416737 +0.32982217041628803 +0.4947795491648584 +0.5808930415635963 +0.6108791054338041 +0.5499296824614271 +0.5832462366150806 +0.4832058408353963 +0.35162952894834054 +0.2885204959159305 +0.15586443547167603 +0.07667156120949138 +0.020584240392636805 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0020367176345759733 +0.009520956031305908 +0.043695035752947364 +0.059060273118603644 +0.14078577891664984 +0.21416147255137777 +0.2782037673323084 +0.4000149368572382 +0.44539686527988964 +0.4817678453039673 +0.36454319865478335 +0.45694446143534045 +0.2745884905452025 +0.16124727577347228 +0.07142645460176339 +0.02579863887594518 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0111274248591859 +0.05171342717250334 +0.10214796213583825 +0.0550768045341294 +0.05148947778256541 +0.06675483575147213 +0.08884257840576439 +0.14079283687151886 +0.10022091162483757 +0.2517000817821199 +0.21981862562045992 +0.3145390184774398 +0.18133579166409225 +0.157021504934044 +0.072814050252661 +0.023598426387491746 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.009690554008646702 +0.04749029939110259 +0.09287395026802277 +0.1545044030110223 +0.23001302558497033 +0.30441929811817486 +0.3177660783088075 +0.3282485046183089 +0.5109070926525014 +0.6013667041890353 +0.440642600307952 +0.3761305734908189 +0.2602332588895716 +0.17109689608066886 +0.07134715585661743 +0.026046599625167446 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.010546180032638065 +0.04862772735750313 +0.12013759344945364 +0.20812835920165398 +0.2647592715112067 +0.312150616907864 +0.2787952895326698 +0.3314419174476525 +0.3265966445990534 +0.2793824986916577 +0.250366958610355 +0.23474883596823923 +0.23913107184717455 +0.13627169302271194 +0.0691733456077479 +0.0225026758528364 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.012553258378765569 +0.048073827848062155 +0.10978406321959534 +0.2700873691809335 +0.34760262150440085 +0.41576230670811337 +0.49081938271569703 +0.3764878315803056 +0.287845575134079 +0.3036911119162022 +0.28534507795416236 +0.31274606725395104 +0.22485441411864102 +0.15233932766773772 +0.07311851198785321 +0.0212606945137952 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.00955382451347705 +0.046718946821351755 +0.11287532223132009 +0.23874302680084347 +0.3131864795032697 +0.47899923668009586 +0.566688654518334 +0.6082066351543411 +0.6485923705687129 +0.594737197616127 +0.424500004218309 +0.3921015326647036 +0.3013032442334564 +0.16173903596168251 +0.05316926960109231 +0.018209469332964353 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.010789055233179091 +0.046804754527639526 +0.11090535507549669 +0.2596963017021105 +0.4376158057206063 +0.5818028295947767 +0.6691362697070253 +0.7156671310548073 +0.7222201641989698 +0.6706204591081055 +0.5773236575145316 +0.48262023355216344 +0.33386668594116586 +0.1693431452198507 +0.046374670505563 +0.019083193111987785 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.010017058926240711 +0.04294168641111262 +0.10459413930496589 +0.27787534609169917 +0.4440445023335216 +0.5779071831752352 +0.6670890989486186 +0.7117129247477003 +0.7186366776008452 +0.6860481480387702 +0.6018304557462322 +0.4905452734707398 +0.3445266711699311 +0.17215217537283917 +0.03319417419121423 +0.01894908605735877 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.008998523662909165 +0.04232652110641938 +0.1040549397117963 +0.2708736310594126 +0.4298719674966801 +0.5571665450444905 +0.644447414032176 +0.6865541899268877 +0.6875292645577163 +0.6511282429037534 +0.5787651513452865 +0.47101450880062967 +0.3300439346644479 +0.16458069073420817 +0.03673938552267219 +0.018480753463921827 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.007687349186971957 +0.04399334690167279 +0.10275481917804045 +0.24321363173942767 +0.38167142488711264 +0.4912414479251338 +0.4806626860669473 +0.48747760921375477 +0.4942386934352343 +0.5293672770339405 +0.42428854414969647 +0.3451464832274538 +0.2222609795548426 +0.13834561568940018 +0.05922318656133927 +0.016649785108353316 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.007027338669257826 +0.04316153116910621 +0.1038323262328655 +0.2695405308305001 +0.41869699445726793 +0.5528805335307945 +0.6513611061728669 +0.659085954762615 +0.6848173927877533 +0.6406123796216868 +0.5631828477278865 +0.47180827621067645 +0.3283666944899202 +0.1635861985292465 +0.03605103503035559 +0.01638438877570707 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.006262214541038111 +0.04180568953502429 +0.10271322126003576 +0.24583881102698282 +0.41305279900200176 +0.5459486443912996 +0.5994485100630425 +0.492795678435684 +0.37997456610580665 +0.3873042851152396 +0.3326369294857707 +0.13184125181857753 +0.13054481163544132 +0.13889049169685613 +0.06454804194933432 +0.013721177719875077 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.002449405524718112 +0.013566387765410935 +0.039267946785171336 +0.023635285185999753 +0.03796004207263261 +0.044647081414399555 +0.11359056860087313 +0.2372866450345856 +0.18950964996162115 +0.19495708353551755 +0.2658326101569402 +0.1794613656366373 +0.08624494959063729 +0.12829858473135033 +0.06000277606661753 +0.016909267517039684 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.005595335431764102 +0.04021908222627544 +0.1008784542671212 +0.2680778941329289 +0.44004254264746007 +0.4954677548645122 +0.49293560172385265 +0.5059676774773616 +0.5022679013070568 +0.32983366185790847 +0.36429969591255623 +0.33656797499144264 +0.23881117389726575 +0.1317272264744844 +0.05159482594272534 +0.01795539123328455 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.004409431462858503 +0.03546760962577253 +0.10186346754043486 +0.2551850625109955 +0.41017726720101527 +0.5632345705700109 +0.4785847216502924 +0.5095822878611111 +0.41947759255536055 +0.3837154865698075 +0.3363179558810444 +0.2865708743425798 +0.271649151735424 +0.1385053081413438 +0.06004308273917952 +0.014455331657271434 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.003742718146128943 +0.042757402089902266 +0.10484054324131124 +0.18761092957459263 +0.2361314374036556 +0.3871715465873881 +0.5499430468508582 +0.6252401663472584 +0.6678109825356076 +0.6774299997715336 +0.5778934296157141 +0.332169386108894 +0.2432433323825865 +0.14621551454791668 +0.03925807089841214 +0.018866332540773665 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.03149718632612228 +0.10260959454725896 +0.25634152236637514 +0.42232941457633183 +0.5611722772509756 +0.6347868871995264 +0.6422310148877304 +0.5953611313824445 +0.5056347734013152 +0.2574735151859619 +0.27745120104050847 +0.24800855796824647 +0.11180390597160363 +0.05638246160827017 +0.013749657875911956 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.036035926684342606 +0.08572283680925916 +0.11893396682299537 +0.19142474484129546 +0.215948396172577 +0.30764363177103393 +0.4071451150727872 +0.3703360585231011 +0.2718420613589114 +0.13540365897378684 +0.08379762648479021 +0.10777347387227487 +0.08347076455352044 +0.048047821293866234 +0.011973242922489863 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.030636666302846897 +0.09735414382525828 +0.19087191860361188 +0.3358018722575705 +0.49566422440696556 +0.5832646769055112 +0.6666766661894056 +0.627863611191662 +0.4798221014290554 +0.3828811558068181 +0.3270716123780707 +0.24280764467657975 +0.14759277430976647 +0.04535555174159455 +0.014567311923851916 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.03562765054200837 +0.0998452985324874 +0.21284945971476246 +0.28977685848120904 +0.2684862250047019 +0.21563661929159741 +0.17071229195689155 +0.24628566653578568 +0.18877744497719404 +0.25275041915942925 +0.3297344911967898 +0.268343785239613 +0.1378307855666095 +0.05112828297881692 +0.011945980704586273 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.019014854043943315 +0.041862255390500154 +0.201159462295962 +0.2488932957825517 +0.38378101337882076 +0.5080006883371235 +0.47958056392498843 +0.5409792495556481 +0.5077494880526014 +0.46287878503843516 +0.3334492226479187 +0.21078000160682636 +0.11511241494356952 +0.049907595778294324 +0.006149674915354278 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.03489507977605252 +0.09865890201567079 +0.16788002455975246 +0.33669364453283035 +0.43618133805537546 +0.5604421889903558 +0.5823567733110667 +0.613312080324269 +0.5203878922238988 +0.3802096113199868 +0.2812631877290756 +0.22904009049078966 +0.13942978033052264 +0.048706670859361506 +0.006820775178642302 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.033040929546075994 +0.10000873754643022 +0.17322832987219283 +0.24981969002091423 +0.37802694677327797 +0.43408939545326675 +0.5667946467238094 +0.5728717812362146 +0.45381962077500504 +0.3300430718482512 +0.37600189451980204 +0.2778167107450672 +0.14305941251928356 +0.04787188963403773 +0.007207629716657653 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.03227440161439765 +0.096656765272968 +0.17503622244882006 +0.34740033070474374 +0.4506279553054314 +0.43223239409354813 +0.5377852947396086 +0.5157878303242814 +0.3144027518182863 +0.2115863318112104 +0.30044429426985064 +0.2155921081453231 +0.13250300609742163 +0.04812706010868308 +0.007309498897962606 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.026157020066694136 +0.0955235255006377 +0.176366967711146 +0.24901364077928365 +0.332484584036717 +0.4545004023405772 +0.4834818299411123 +0.5198879231165702 +0.40137714668088276 +0.41578751782011736 +0.27158688845187384 +0.17383605603002023 +0.08318111865770496 +0.01865456993149614 +0.0020419467794078956 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.02560154226884477 +0.09032693267665508 +0.23226133528719625 +0.37325136715912066 +0.40840894782199294 +0.525222841996068 +0.5003945652354254 +0.4073398908086956 +0.23540850058095428 +0.3081207248176068 +0.20587165005017408 +0.24150314664239783 +0.13880006671979456 +0.042599931130690376 +0.00691647771591418 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.023324775151708024 +0.09042244667992737 +0.2409471182792259 +0.4231890167921475 +0.5782194618576811 +0.6382809666200717 +0.553831945131109 +0.478692568125156 +0.4134222761192076 +0.3597368223077958 +0.26853825315845037 +0.1566134296803387 +0.12010953176395209 +0.04338830788142613 +0.005845729621318875 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.026688439456440418 +0.08965679008908917 +0.18721112283322397 +0.3531857295062313 +0.43394000966793667 +0.4776825933194793 +0.5525391766006454 +0.461352772891958 +0.3763551676000761 +0.2508134175551771 +0.23797186951996843 +0.25290471772096823 +0.13860890245716567 +0.03584569387603411 +0.005123797366359875 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.02300049716051282 +0.09294446532025638 +0.25374414895639036 +0.4251932124873325 +0.5579513069423052 +0.6218822001549401 +0.6169079139527645 +0.6144039624547339 +0.56886438755989 +0.4828716464416616 +0.4166936655571914 +0.3214049363626476 +0.14424000124439595 +0.03296617927949067 +0.0044675787810917285 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.022191462325527177 +0.08770418347865631 +0.2508064157463852 +0.40288221998135726 +0.4798527178564708 +0.5231569412923494 +0.5657231138748186 +0.5405412023363343 +0.5079235267983111 +0.5289195677387432 +0.448630656635728 +0.2689159242606883 +0.12649842303492237 +0.027671439830300404 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.020672458178355103 +0.08506088240478005 +0.23028565583641528 +0.3265939161810063 +0.42826705543467225 +0.5084730127036713 +0.3990247163460677 +0.24024417969479056 +0.14226878759979347 +0.09856378098289367 +0.049615662553066375 +0.029607153888038123 +0.01814040860044125 +0.01489333763263545 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.021669444685791187 +0.0828353915506522 +0.15420238337188377 +0.2592865603550927 +0.33346252131557746 +0.4765619247804571 +0.5790391239136808 +0.585271959548455 +0.6031083995807653 +0.5053121983900984 +0.3872268073201301 +0.25333659419569804 +0.12618805140951134 +0.027331181670335596 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.018642124019842197 +0.08374840639756323 +0.23233783624428525 +0.4021057236628908 +0.5376196664220225 +0.6075528075940715 +0.6288317603789942 +0.6573520654238019 +0.6475351139266102 +0.5748654630540971 +0.45089167118792745 +0.29278448402913815 +0.1275444337366143 +0.028420078679416587 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.01657900493030537 +0.08215064204251156 +0.25100673360327425 +0.4179442570828473 +0.5503593799067215 +0.6310499922494136 +0.6767843516236675 +0.6546022898104319 +0.6327150148701858 +0.5526433357879976 +0.43799774227801125 +0.2872802030624823 +0.12242683957883088 +0.026970728279600745 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.016365925183489814 +0.08066629036777649 +0.24006209566292164 +0.35118668357674643 +0.46781582893034857 +0.4255476383517875 +0.3795498429653518 +0.4961922969221285 +0.5690613220135208 +0.5552790991868738 +0.37556629656084184 +0.24965710381121187 +0.11348395264060317 +0.03153854841796117 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.017176160056630883 +0.08273813151780128 +0.22616166348261058 +0.2929138842290782 +0.43357159168982345 +0.5345795333946598 +0.612668446432411 +0.5966733147412341 +0.48868425533677057 +0.4277251276791979 +0.28145960987748375 +0.1904148717110216 +0.08571920763075488 +0.026111713562446442 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.01725987705658891 +0.07898456062533683 +0.2108353237315546 +0.38778220771272726 +0.4890640130568764 +0.5493655691014591 +0.6459546064527836 +0.6303649445165388 +0.6406122963460829 +0.5173314695966131 +0.3095436796283726 +0.2135536461125785 +0.12138668206376796 +0.025103920152709017 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.01732880110819142 +0.07922625980450462 +0.2489373106860807 +0.4099492591736368 +0.4724109468811403 +0.6252017210285277 +0.6107174671008703 +0.5504837368649443 +0.509778322597884 +0.5118444481208888 +0.33833214874695 +0.24109909096618182 +0.11805212652720058 +0.021511734320592786 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.015056674273021108 +0.05420932194811822 +0.0504517894382073 +0.04709594927760774 +0.12589202096292493 +0.23208406223354544 +0.19475767325201307 +0.17332723384793353 +0.08602628742008012 +0.09753394482415671 +0.14207761058337617 +0.09547515234766929 +0.045017505365532715 +0.02193656699832024 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.004294399625218444 +0.01002346796440102 +0.10004925352424955 +0.08726286808596767 +0.12246719123287178 +0.25556560872267264 +0.4568070167270143 +0.5980748775014239 +0.5806117488045844 +0.5395862616974486 +0.3473597637733678 +0.1534674779889462 +0.08805344104821355 +0.02102582319745789 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.011108758668642204 +0.05497287053768161 +0.24303793700478335 +0.40251534902781233 +0.5465013174048239 +0.5392389707171702 +0.4291468481273277 +0.3834249788716065 +0.4720475911249017 +0.37022235197897935 +0.20329684572754136 +0.1945430185623532 +0.10464773805127603 +0.022346908985057635 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.011861956533034013 +0.06916194250810717 +0.22191996283700818 +0.3209299224145519 +0.44242137917734903 +0.4030450360085755 +0.30487959592633224 +0.42955353620650905 +0.4860713173740565 +0.3722830945515068 +0.29771602331513913 +0.2338206542440994 +0.10595445071348396 +0.017840949289133518 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.01575998797578168 +0.07813550460905916 +0.24936212408981775 +0.4227491001838681 +0.5386023830709374 +0.5890739253586917 +0.6383844904308279 +0.6024813168950913 +0.36488796350305847 +0.2958585753829572 +0.18911948851757607 +0.10475789117164075 +0.071182421552175 +0.01710061452967365 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.010594303710900537 +0.07426097697433445 +0.22614596825374467 +0.36983000369866637 +0.5164586526300928 +0.6091172891171047 +0.558113864994729 +0.5445785434018054 +0.5281596721981106 +0.3454344319124483 +0.2942782649906677 +0.21344270818583097 +0.09116476383768325 +0.017942774371709835 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.010879639226654088 +0.07145923175388931 +0.18787181987663995 +0.2875407613413555 +0.3340349560138884 +0.3812336646853079 +0.28625896071382595 +0.25849514490112174 +0.21912423544518994 +0.13734168159430488 +0.17109114406657305 +0.09218012912167384 +0.04819643609358469 +0.008896296226415204 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0022807078896326565 +0.015797340631511475 +0.05008364394714961 +0.06640104453104528 +0.11292391048750348 +0.16300329465599564 +0.17977675003416468 +0.21754393070558156 +0.16511541003539004 +0.16616305138700083 +0.11401660817628721 +0.07943465722689534 +0.03412426187566836 +0.006931578308619421 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.010242649545986107 +0.07592845556454574 +0.2240965926334148 +0.36482557522403114 +0.3742737569165895 +0.44308825432194393 +0.44032826126055075 +0.45517486152691067 +0.36122148322483 +0.3490602907030392 +0.2851253953785097 +0.2021012396199933 +0.07957998547184489 +0.014283856539240617 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.008975473280197257 +0.07029777121509645 +0.1567991264292092 +0.30458622846676486 +0.38622159774080045 +0.5569079305600393 +0.5571305652783167 +0.5290308567494713 +0.44187672495996616 +0.47199799317917446 +0.32939157420908227 +0.1952491643757057 +0.0775255068893211 +0.014319922625734562 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.007217058997527347 +0.07022762810792907 +0.21545622701762399 +0.3854502458737332 +0.5343606743032184 +0.6463435397114546 +0.6961648851323358 +0.5335703116651871 +0.39823011901408717 +0.22793589702667333 +0.15808269323736315 +0.0890542835247767 +0.06461216835664114 +0.01057275285314455 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.006358990641103942 +0.05729805459321671 +0.1479645159061392 +0.2546485878182821 +0.4054729014259062 +0.6058747583259896 +0.5611137101641325 +0.4990648407237936 +0.3990073549340962 +0.3307574668181993 +0.23748925703530627 +0.17942378948016433 +0.0867082504469085 +0.01281864963956983 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.005540181179755277 +0.05868781315593123 +0.09090235135497259 +0.1405478000255007 +0.08233831307673295 +0.10981460873659672 +0.1065561044119819 +0.1791743613601941 +0.2033532982423449 +0.19894547943777174 +0.1692190800822085 +0.11452865016776351 +0.05354293706582254 +0.0070765323084956856 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.005283651085404003 +0.05877174500539522 +0.21472320373386947 +0.28042133589026386 +0.35412288717757157 +0.2720392205797582 +0.2719032398600593 +0.2922375015302234 +0.3095395312055672 +0.38888271809028374 +0.2739683866815237 +0.1747362244806917 +0.07147069841794096 +0.010231287364926421 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.004554125579220849 +0.05804046931782549 +0.11420664521750544 +0.19404882534630544 +0.18715528591528302 +0.2369694950106414 +0.1252630423245333 +0.11394048470033022 +0.1129257877737496 +0.08422608568401457 +0.05858344173547058 +0.025166300296880117 +0.012016412693879847 +0.001301519764150399 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.014319115522720742 +0.027868589107939528 +0.09008683340121511 +0.212301593848526 +0.31527319141028304 +0.34008539875766924 +0.3263226692675921 +0.18429712277963348 +0.16663618502036495 +0.12389915920256213 +0.1317800574082861 +0.0506528655937415 +0.0056518057830798555 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.054588347407848695 +0.12453512768492596 +0.22519912267342923 +0.38624786637970776 +0.48673376518399264 +0.5181058903987924 +0.5776079252434844 +0.6059787146933612 +0.5311609831014737 +0.4053807546166418 +0.2348829461717529 +0.07385821953589841 +0.005820581311583889 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0609599523977099 +0.20639738166572447 +0.3416448687209725 +0.4312335792572268 +0.5606238289670995 +0.6469919264542049 +0.6664023161933275 +0.6100125924458569 +0.5063210543898145 +0.3399310960380092 +0.1762191634465649 +0.06172777222311863 +0.004575635826105161 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.06029576011494999 +0.2214603106096615 +0.3998654204532499 +0.5407163239546723 +0.6246492014063618 +0.6651307610697687 +0.6564805673827631 +0.4460957114865926 +0.22983577965963117 +0.2827649689584112 +0.22133232503867004 +0.05478694143860737 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.029528004957611483 +0.07830859447898159 +0.13024107300475518 +0.2599375024660935 +0.25318033878722684 +0.2779366933616344 +0.4175376122338934 +0.32596439270733285 +0.2559220015151796 +0.21811481953456002 +0.15565697762113814 +0.05615501842520483 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.05805255388623134 +0.21706810084919154 +0.40275807005826036 +0.5466782479191952 +0.5818794459916418 +0.5954334060962538 +0.4763823821887733 +0.331999764200311 +0.23919364776114233 +0.1422390963403744 +0.10130014625234045 +0.050284259784430727 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.054541959876373135 +0.1282353443085918 +0.2923390396099787 +0.5199692300139059 +0.6533138396688656 +0.6944947831207393 +0.5730876646464047 +0.46363204563371024 +0.38295715044545936 +0.14304780579560877 +0.07734109981169042 +0.021793045065694093 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.045855514079147286 +0.08353827820552995 +0.18271725213346557 +0.18867744954300472 +0.31473852439186906 +0.35993799061231746 +0.2732188979983848 +0.25417705530222184 +0.180068489414058 +0.08271009668154515 +0.046632626973611986 +0.015937814275194 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.033125109052347265 +0.13869206421932223 +0.23857203014325984 +0.41203870796281006 +0.5695523778224539 +0.657910391852058 +0.5517035097385464 +0.5093690733777712 +0.43037700954424457 +0.3901247872670235 +0.2175180339346222 +0.053660591300778465 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.04107679544972132 +0.17354169730951152 +0.3607011720311782 +0.49393788646138315 +0.5988789187848003 +0.6424646882886719 +0.6484392020217672 +0.49853841885494493 +0.38520072612866624 +0.22293623434955356 +0.08853862569019148 +0.029981474266966894 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.03187499672946094 +0.17697920616114546 +0.376503678616309 +0.5135795046749178 +0.6181750412941869 +0.6429683020734887 +0.5746506769907497 +0.3188021224741341 +0.29702261138164837 +0.22089823946457463 +0.1315970976547593 +0.030969130502945925 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.03386053869301605 +0.1811915440466497 +0.3201437264887155 +0.45667245314348576 +0.48637295101121236 +0.48060378118758124 +0.483798008417303 +0.5089723263258472 +0.4830067051377818 +0.3505757158219695 +0.1978270440268782 +0.0473166295801855 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.047683148878729584 +0.11983420004335947 +0.16496681920016854 +0.18574176612541565 +0.28671514205632875 +0.27375712587070855 +0.20850010947153086 +0.290253829333291 +0.18961761721020964 +0.14214810651230383 +0.12067649220922622 +0.03247445380915126 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.03819821032264509 +0.13380789626881262 +0.23974638690507263 +0.42592204758867913 +0.6164264808821286 +0.6806440077276732 +0.6645408486991219 +0.5689212528020469 +0.40569705792810684 +0.21369771877028876 +0.11553091844079412 +0.02759016868878319 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.02509446432975423 +0.20694786301969903 +0.3268045726221327 +0.5045327948405075 +0.5392850105968593 +0.3664398744924864 +0.31827921904221823 +0.3193428499381856 +0.29221719107040134 +0.16768151393403818 +0.1321452589000849 +0.032617837469934824 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.041689416769234634 +0.2206864003830822 +0.3995650494369894 +0.5411401983136487 +0.6700214117361123 +0.6609344337159815 +0.5222730956014134 +0.46956209403335036 +0.3123642167237061 +0.36719885509777683 +0.15499891750458508 +0.030969335010365424 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.008834967921844124 +0.1025300001628668 +0.13633225459133372 +0.22922125768904433 +0.26679345598235427 +0.338775127205225 +0.4429863579482443 +0.4894835705066186 +0.306146660002324 +0.17772266115866306 +0.05475825076216673 +0.007996734118258821 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.03665559028386887 +0.1792146532974814 +0.31529357655054385 +0.3938235896336659 +0.45390718358253146 +0.4831445773628915 +0.5800820935403731 +0.43537422279511756 +0.12853434281818818 +0.07701060065832269 +0.058407462664840745 +0.01538284469293173 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.027363680904216064 +0.11163744938777007 +0.3630785523371326 +0.4373848293404546 +0.49027262248904546 +0.5701935560899221 +0.6319572020891671 +0.5540741074386404 +0.44624234612242153 +0.3403774030533932 +0.1649245895359096 +0.01965965330764399 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.003519489087551162 +0.021063856860898764 +0.03439847537025691 +0.10321624786844136 +0.3131912942166719 +0.5437761817356241 +0.5260848742402723 +0.33807409622664497 +0.2656017622539428 +0.20258143207812482 +0.08627059040795027 +0.014991681407609874 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.012387543242452071 +0.1441485255609244 +0.3139807398657983 +0.4528476159350502 +0.5019008686929807 +0.41506544633108344 +0.3895845555788307 +0.2748150375571893 +0.1507375420557871 +0.18974717542466912 +0.09562830036661676 +0.01223411815168085 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.023113415506258103 +0.17606093473659137 +0.30847223675179936 +0.38670230013484014 +0.5204870311948473 +0.5696839993662752 +0.5226560190618642 +0.2853245917132933 +0.2780645887991304 +0.1292184249165256 +0.07367136534088688 +0.01021669591615355 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.021731064011504733 +0.18376521905634335 +0.3704608666604953 +0.5393813685453792 +0.600534137324952 +0.673583843257373 +0.6412714541914808 +0.5283839468451648 +0.3199997797911283 +0.29097418730537805 +0.1367441752710247 +0.013026989211991127 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.02043601274917036 +0.15047501416661527 +0.32512736673505166 +0.48609715606172477 +0.5964247666413576 +0.6628067411193433 +0.6461919871129584 +0.5885874978443942 +0.45377470875413045 +0.29605626414267977 +0.1320661677432308 +0.011481876142842984 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.018347836630467546 +0.1736372091359161 +0.37768967372653767 +0.5308356013540355 +0.6389809225738178 +0.6740702311065465 +0.6628304203624291 +0.5460372471877094 +0.4389734453388485 +0.2699895332532569 +0.1126253677740951 +0.009205367528432866 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.012902750884498658 +0.10377076414749642 +0.18484509862495 +0.3521604258418934 +0.532328373428212 +0.6144825478224161 +0.6633856825970262 +0.5792607587973782 +0.3747006760218703 +0.18725530823240255 +0.07847238914929273 +0.006071512566558586 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.007101087763426487 +0.0725136369570983 +0.1746063082301159 +0.22929245574982304 +0.17109167828632027 +0.16027767100229565 +0.13078321888841105 +0.08568735559467756 +0.04524046230062728 +0.017231609790372044 +0.008439545104827873 +0.0005667813247542875 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.012499342231885924 +0.1292397635069046 +0.3060806772056108 +0.2745287840917564 +0.1784664968615357 +0.07395555775849084 +0.040494081289842464 +0.05045176390054226 +0.021151365378855928 +0.022840624305351456 +0.012982987204989645 +0.0008540375437704497 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0018101463562299209 +0.010163295823743493 +0.021998037207247457 +0.029917603063059395 +0.11765892961412598 +0.17449791348751525 +0.15388695183599824 +0.06128140365073972 +0.034697799459939394 +0.011497166964534474 +0.02022814232429587 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.010827915901274165 +0.05889879083190899 +0.11131514101457875 +0.16557710954052998 +0.274339005213928 +0.4039015745174406 +0.5022131586995289 +0.4264922698772934 +0.3636486180882638 +0.15590336828659873 +0.056236772841056805 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.009814584469082519 +0.13569333581969054 +0.27518127359797356 +0.3142619470890889 +0.2938259892051619 +0.27121105449095817 +0.27356444562174825 +0.22474748718838775 +0.15148435448560763 +0.13417276367804917 +0.05445306298931051 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.006930129036147528 +0.10545050503723621 +0.28275253183427446 +0.5003753989537362 +0.5514755900374383 +0.6593563045470079 +0.5938800819797486 +0.4209302706196016 +0.35680073557141556 +0.1927935090120672 +0.06035094585815818 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.005186512048280533 +0.06730197430434699 +0.14533912122772866 +0.1540093894430798 +0.09109407079727945 +0.07399204844185127 +0.12793227273987795 +0.09259315054454759 +0.11399431342381391 +0.17921815925653095 +0.08102891048828566 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.006137251040328859 +0.11804169296852086 +0.19120852647554354 +0.25809060984145715 +0.2304130067662758 +0.2979243320553256 +0.3238599513680846 +0.42426354123842386 +0.32557587707931396 +0.13461455747240117 +0.05919242532726948 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.006139858036290926 +0.17137668032064762 +0.3916417088414465 +0.5607795339884472 +0.6637895051325967 +0.6857557944440563 +0.5560038667802444 +0.30950440993019035 +0.15587779441821992 +0.050874264101429825 +0.02043879305477613 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.1460184728390333 +0.35466013726768303 +0.545286215128731 +0.6228304503612029 +0.6560686509867186 +0.6464344177363892 +0.5618605063720776 +0.39335270854906484 +0.17196881451421395 +0.06502243758036193 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.12174462775733579 +0.3309168797491201 +0.44724716702154005 +0.46336347965830343 +0.3775792842635319 +0.4337849303663831 +0.3156183841341589 +0.1759187873651707 +0.11589517716067896 +0.04471575009024456 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.05431019393555526 +0.1386504253763433 +0.22546631001198816 +0.20174089617640942 +0.15957535884904397 +0.10730008640990758 +0.0930048458644468 +0.07905009012549727 +0.0520619308662695 +0.021491958431086172 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.15705410525851488 +0.3570259617423887 +0.5405825034016333 +0.6490679096477013 +0.6923746807952266 +0.6865008460283835 +0.610413282057222 +0.4978689286916974 +0.28716572059074086 +0.0737621593534001 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.1525049933634434 +0.3622366056012811 +0.5038169316052113 +0.633951457112347 +0.6871517039737487 +0.6398723304942674 +0.5150051708628569 +0.3345118218743092 +0.18512798421305812 +0.02297503947835796 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.12293209973516278 +0.31256364291910527 +0.48113321609006576 +0.5735004726849444 +0.6297734212146808 +0.593447459854155 +0.5506605259879809 +0.4124404982195787 +0.24537555445886294 +0.06433390302076028 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.1160331484113145 +0.300965798595888 +0.4700750809648714 +0.576603435246409 +0.6162914239456394 +0.6099538759761747 +0.5405297183192124 +0.4217741752945925 +0.24541527455271084 +0.06367873426972503 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.13255381899045807 +0.33738261499375505 +0.49164284122918406 +0.5892011718551844 +0.6264517658249524 +0.6107332994515874 +0.5459380667426333 +0.42157985702499423 +0.2472363901460283 +0.053190842396836316 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.04680440921256409 +0.1309485302011057 +0.11372511727723324 +0.14769738567480245 +0.1779454872343251 +0.21457401720556488 +0.20845710842528728 +0.1625909456518816 +0.0769508363021914 +0.013034299941295685 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.009238873831930621 +0.03463579222372483 +0.05444692127327125 +0.10450021923300175 +0.10285849096305798 +0.10044246532286781 +0.09377015311407204 +0.06379529575493287 +0.03361361094860478 +0.008623081764171989 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.006995530466967321 +0.03413525935621425 +0.06689339549527254 +0.08954228414322825 +0.09542947435114163 +0.11246858248072393 +0.10702936997148611 +0.07254578486038385 +0.038886777968648985 +0.005940671173615386 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.011907380502067265 +0.03801708069339606 +0.06744591033778508 +0.09872830839302532 +0.0647752305751942 +0.10234162115075232 +0.05226106497309413 +0.029896655698200828 +0.015470163775520055 +0.0021677747607963707 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.007292934011470954 +0.03563971536764137 +0.07494576358998836 +0.12405939421831852 +0.10950511411407579 +0.0942774944960759 +0.06974789623757034 +0.05974973123829094 +0.040143945807783445 +0.008943810135992162 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.1240361295675172 +0.3533015946571045 +0.5125881581712214 +0.6365753271957284 +0.6660650927838385 +0.6421813160192387 +0.5346625922678141 +0.43040710731149046 +0.1662046874522065 +0.012347790678811045 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.014456779427162936 +0.05387172075575107 +0.08511408279901889 +0.1467943639850925 +0.16297738042552948 +0.16524049230214674 +0.14960923392900774 +0.1134138365197497 +0.07718673290290651 +0.00833023481334574 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.09003058574959454 +0.2930734014413625 +0.4755449340222076 +0.615769418116209 +0.6209099159435361 +0.5336436329398165 +0.42588472439247316 +0.2715366723907297 +0.1776006815482865 +0.011226646245282941 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.05673117854977847 +0.24254447245138105 +0.40769190014620804 +0.5359285641910663 +0.6518084467074202 +0.6793036970159287 +0.6061033554745231 +0.44653956774954845 +0.18963627773163422 +0.01044616177892175 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0050426837015425845 +0.020535913006153553 +0.047060475361767086 +0.05479500971714416 +0.05061744347342678 +0.05410951899740796 +0.039484079443113364 +0.02090949812901971 +0.011339832931107453 +0.00287254941289268 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.009313933534957486 +0.0422342565793381 +0.060869719430501984 +0.09065215254456198 +0.12475947733808716 +0.10106744200983883 +0.099942032644714 +0.09916835298834213 +0.059333022272988874 +0.005280341379982882 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.009971174650994246 +0.036420372556437916 +0.04277271443757024 +0.04604553018895884 +0.08040273725081315 +0.0485539969302194 +0.03723465469057769 +0.02530000855803942 +0.012268807862762054 +0.0011181655181256875 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.017770890499942814 +0.18660197768016384 +0.42870451867997295 +0.5001727049924763 +0.478811972406859 +0.565424632818581 +0.4044858114619388 +0.32221465240704245 +0.17713259896817252 +0.005576741052908806 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.016368599409991427 +0.19584324642275713 +0.4304155776057968 +0.4387959680216062 +0.2983026261740888 +0.17270989560889236 +0.08964992058691393 +0.11667098074575716 +0.0318673734208286 +0.0010935762591606354 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.01644883514447287 +0.19473133677698212 +0.345772143972055 +0.4704529142569273 +0.49937237283852176 +0.391697790976448 +0.23837498117785508 +0.10948182335702246 +0.04153169503331746 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.010721700294703321 +0.172028156783282 +0.22904102907485563 +0.4715225722735876 +0.49866221024463736 +0.41469506059901984 +0.3934869897522287 +0.16876190478550127 +0.13003986366301912 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.00806269475309529 +0.04281953372499038 +0.08189370057200399 +0.22179506534831808 +0.2799000168082602 +0.3765152675091948 +0.22820238345897162 +0.19773441065387715 +0.09840667165600374 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0009793005318774043 +0.00876971339521565 +0.022540638373159814 +0.03579878895399254 +0.053920251742781124 +0.06926947230658603 +0.055683557027885106 +0.03285493989501414 +0.013374615278962068 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0018629775221430083 +0.01431651601856639 +0.027640537674497912 +0.030096580632552595 +0.03375268593087042 +0.041095034350915945 +0.046167922857443575 +0.036741510344444256 +0.013083355410162093 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0059135268312786185 +0.041068711586193005 +0.13829364261834695 +0.19302730905488558 +0.1762251619460173 +0.17928849960141938 +0.1204805205273772 +0.10308506526172762 +0.06717883921880856 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.00607230268273461 +0.07649722770033286 +0.20871906497225537 +0.28198406270197834 +0.2743483336225331 +0.23028091936461603 +0.1687886766287221 +0.0742408780332223 +0.019756506952781326 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0054016708441987525 +0.17372726013555728 +0.36083940684719507 +0.28175409026669673 +0.1880916839966748 +0.16495201595598777 +0.08523539228168776 +0.028498071748277013 +0.010877006127355603 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.005748930412413764 +0.09699233583519846 +0.12392385508661176 +0.15307252242589606 +0.1252329916348943 +0.11762929825278433 +0.07599511014028834 +0.05443280914265064 +0.019220138088681844 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0058249986751570835 +0.17220069307423258 +0.37853056832089244 +0.5178951569499826 +0.587265753414648 +0.5609048677243276 +0.5162753615107654 +0.36538528321734953 +0.1536224313996706 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.00529919664694661 +0.24202097631578814 +0.44764616348838243 +0.5778763916668083 +0.6211909289899361 +0.6031705437621966 +0.5256709241895751 +0.3720767392107918 +0.15438696435262922 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.07225665881079713 +0.12529010826927858 +0.08301304272230282 +0.12119044700453459 +0.08833313637281663 +0.08060529571027251 +0.04098917707307974 +0.012663059536039658 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.013409880414626842 +0.03699614661722434 +0.040674165062003824 +0.06922169512684609 +0.08005240896425936 +0.0665006271895059 +0.04784362989977723 +0.013084849470768387 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.07941598848849642 +0.1747895794650954 +0.21406665328414337 +0.27556560983684925 +0.23699091932784366 +0.2404672989169552 +0.25674604879710894 +0.10293056133146455 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.021121694947484487 +0.036260421401589256 +0.056281069508431494 +0.06438763399164542 +0.05240611390459035 +0.036947729980435856 +0.02874562158499076 +0.009547940202304737 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.02077612358901648 +0.052163503567903224 +0.06875928128954883 +0.074287640950684 +0.06255812087342098 +0.0486644098742638 +0.024598668411632267 +0.008045351475224859 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.05952065286938612 +0.12167531329022344 +0.2020215019951903 +0.20266970155715064 +0.14997988251699723 +0.17496205183213806 +0.05709872262407234 +0.01528963924406236 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.025835921683476325 +0.12132583048557183 +0.24091555627300323 +0.25133134514930927 +0.22973326181954934 +0.14658702104422344 +0.06855796305528687 +0.016249671852220884 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.020133023652151645 +0.048788859875981 +0.08997134149278699 +0.22576513979978377 +0.21726608864176683 +0.3073710970762452 +0.21463891563359203 +0.06273875157196601 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.10663092947597379 +0.21635312416557145 +0.22034376841836742 +0.25445880072527916 +0.20218624450425648 +0.11671078722525688 +0.09217034027751093 +0.013171297712768806 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.007979646485844974 +0.02896111203727865 +0.05032981138628814 +0.06454844573704485 +0.05839915020267383 +0.04640289755569585 +0.027942362638952906 +0.006282622706777899 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.009194988078129731 +0.0326585540324054 +0.09064191002131494 +0.1098833754263029 +0.11108260290593223 +0.09573480368064168 +0.0600956115306651 +0.012110142811324118 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.15198240070995617 +0.36097238278936866 +0.4912284758089989 +0.5616847551259552 +0.5213864062557104 +0.33138838919884367 +0.14055011086596214 +0.015144290160387713 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.01803021251033677 +0.1270601064868662 +0.09648971159005047 +0.10281415105824297 +0.10841378303956016 +0.11799938431584707 +0.05818259958734218 +0.010785357851965336 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.005356521227627845 +0.025904982315917327 +0.027870733558693232 +0.03094385208945109 +0.08011201020684486 +0.043371838129082164 +0.03623588101427313 +0.009141390532963863 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0036015011547049533 +0.010195019351762372 +0.011907584675382443 +0.01645401935793047 +0.01881234689080741 +0.01907152101466941 +0.009082767201267333 +0.003213769973105592 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.00933786935405076 +0.04500961971110226 +0.1470255111996837 +0.2628962076459664 +0.23984245303850837 +0.26357379828057675 +0.14039345414520044 +0.014654506860670047 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.06651956211816716 +0.29040248257002277 +0.3106252172961523 +0.25850859007422505 +0.16347635823096293 +0.06015992948191881 +0.03272963518873488 +0.005939260094048302 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.01915472106510938 +0.13179896403430896 +0.21607918489348485 +0.2124876966926952 +0.18049601948171903 +0.21144154288994282 +0.15832347697387242 +0.012884327682704776 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.012449896855976696 +0.10178354047716087 +0.268612328021639 +0.38386492971693587 +0.3601514829682157 +0.40459948282136654 +0.20027541346019256 +0.014851607098511256 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.015811978131172355 +0.15593912907120167 +0.22189593112052797 +0.2159635767715512 +0.19751139524801528 +0.11227969890182221 +0.09040431611503146 +0.008645782039965287 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.008437177706689643 +0.031011041311834815 +0.09498878180592082 +0.2745597858778154 +0.42033256956622905 +0.41321772869546547 +0.21402857533457487 +0.01588863926465637 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.015255949995971066 +0.14984846583587322 +0.21715103921161366 +0.20670668597013217 +0.1294763520914751 +0.09933756833867516 +0.038115108949761965 +0.01023450416564171 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.018136831401202112 +0.23869936309701592 +0.41966105995342873 +0.5383664075296799 +0.5809020642337342 +0.5183866053122245 +0.25501843329236845 +0.016677982926653546 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.017086367262225767 +0.132865276186145 +0.10988053042979198 +0.111597131255773 +0.09494110673811702 +0.08328087706538745 +0.03901012201011689 +0.008686408193291197 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.008331309088383794 +0.027365063831578645 +0.0588652313387457 +0.06213985017879911 +0.05040096953313822 +0.023634373487036012 +0.015508427858568114 +0.004897638872844933 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.006744153293789656 +0.045667132366729986 +0.06397300574299256 +0.16708640842521608 +0.07807882215963168 +0.057017897289420416 +0.03726210360707983 +0.007058061471234512 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.006886616358721827 +0.03568322234148963 +0.0759502761570536 +0.09029203267313164 +0.09026083200494672 +0.062201145613774884 +0.04906700013865214 +0.008985161259860715 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.01259316777487508 +0.17509207500280535 +0.41078915881909306 +0.4734649405040555 +0.5639051528412008 +0.4899656153802629 +0.20390548009657888 +0.014127042065926102 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.008713399156940794 +0.04216795431630322 +0.06296217041863841 +0.09388437741595683 +0.13423407771629306 +0.13624684933598855 +0.11639732008479226 +0.011003918757079088 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0030712021944519306 +0.018427109573482606 +0.05765818463754488 +0.14058966682342158 +0.16114896064619855 +0.11298571685608462 +0.1599124928959091 +0.012896413023870327 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.006394056770118357 +0.06689693644447085 +0.07496486499748183 +0.09850027098263286 +0.09451696593044574 +0.037741049759883336 +0.01342007786497832 +0.0024046063725900284 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.009630860588280221 +0.06333422943776999 +0.05357373725251679 +0.05011146620393248 +0.04202723122586557 +0.03430848541855544 +0.018968847042293707 +0.004826583583727181 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.005640103204628054 +0.048156615133313145 +0.06695594175560965 +0.08625679618741629 +0.08699225856362768 +0.06034841363318566 +0.030433092920575583 +0.006977467371169375 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.006192141360431339 +0.034871190384932894 +0.07167246476267025 +0.09109684278017094 +0.08092120439884389 +0.059665998646356334 +0.02913179245479359 +0.0035810352141963614 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0018980384395246902 +0.008871020195074186 +0.012399155701339063 +0.02225166305743578 +0.025859393901830605 +0.020603005052353483 +0.012310271984413888 +0.0024228377223199263 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0017847791056367483 +0.012177395189208401 +0.03289232924697644 +0.05265479624149349 +0.052572049570209986 +0.04687791963399665 +0.03494465232836561 +0.007891864953785462 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.006781726214215961 +0.16116888592651968 +0.266310279543107 +0.3020143317530764 +0.4139973279005161 +0.33253981650791287 +0.20512280271778674 +0.013879330230916306 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.006215225452783998 +0.046009064175081965 +0.13259952887100812 +0.09037158011547565 +0.06890455730353884 +0.047239153548995515 +0.020866996952620825 +0.0036874792841759857 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.004656158425766043 +0.033989111762395385 +0.06295557582897839 +0.047450136000381296 +0.025114790235906223 +0.012787376052393171 +0.005360796628969125 +0.0009142260007168559 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.004427308002451542 +0.03267452212969767 +0.08084992228575118 +0.05214487426781701 +0.03982061665122897 +0.03798241451323194 +0.02223314279833066 +0.002548631758866872 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.007543320215683197 +0.10218940675537926 +0.19406512760684805 +0.20174794276948024 +0.14844388048620605 +0.10971087897929167 +0.022871753312581043 +0.0030013863947423256 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.006251210791321096 +0.1349709265739102 +0.29461491793964517 +0.43523219292601134 +0.38572578736074403 +0.2529798766784196 +0.0936132569493586 +0.010111596001619608 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.002963224810972922 +0.04329783980742278 +0.16528374303419938 +0.19087598427861704 +0.22121161150121424 +0.3122390090312445 +0.1372940688017062 +0.013680163944205565 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.008821620778871614 +0.19140415224715568 +0.4432290135946187 +0.5575744883319208 +0.5584744267298137 +0.49922904710978044 +0.24737958783053135 +0.020467095662680866 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.004479105019928868 +0.02346678766896424 +0.04578122294867024 +0.058957607986836295 +0.07282668665454557 +0.10891515282222793 +0.03992908557527298 +0.011673708177661841 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.004535902845904002 +0.03309196715013202 +0.1413571230205829 +0.3295329457829749 +0.374013249626523 +0.18535420989251727 +0.15000706978451941 +0.016432406021055147 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.004854363057974051 +0.030314858932969552 +0.07189845122507944 +0.194921369035108 +0.15699618530797346 +0.12593782542359921 +0.10110030483115733 +0.013805543551587664 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 From 56418404bb6ec5e2b0f9824c48d5bcffa0a66216 Mon Sep 17 00:00:00 2001 From: Piranias Date: Tue, 25 May 2021 20:21:11 +0200 Subject: [PATCH 14/37] adjust tests --- pvcompare/main.py | 42 +++++++++++++------------- pvcompare/pv_feedin.py | 16 +++++++--- tests/test_main.py | 68 +++++++++++++++++++++++++++++------------- 3 files changed, 81 insertions(+), 45 deletions(-) diff --git a/pvcompare/main.py b/pvcompare/main.py index 7bbc70f8..6065e7c3 100644 --- a/pvcompare/main.py +++ b/pvcompare/main.py @@ -187,7 +187,6 @@ def apply_pvcompare( if add_pv_timeseries is not None: pv_feedin.add_pv_timeseries( add_pv_timeseries=add_pv_timeseries, - pv_setup=pv_setup, storeys=storeys, user_inputs_mvs_directory=user_inputs_mvs_directory, user_inputs_pvcompare_directory=user_inputs_pvcompare_directory, @@ -339,24 +338,25 @@ def apply_mvs( year=year, storeys=storeys, country=country, - add_pv_timeseries={ - "PV1": { - "filename": "/home/inia/Dokumente/greco_env/pvcompare/pvcompare/data/user_inputs/mvs_inputs/time_series/cpv_90_0_2013_40.416775_-3.70379.csv", - "module_size": 1, - "module_peak_power": 50, - "surface_type": "flat_roof", - }, - "PV2": { - "filename": "/home/inia/Dokumente/greco_env/pvcompare/pvcompare/data/user_inputs/mvs_inputs/time_series/cpv_90_0_2013_40.416775_-3.70379.csv", - "module_size": 1, - "module_peak_power": 50, - "surface_type": "flat_roof", - }, - }, + # add_pv_timeseries={ + # "PV1": { + # "filename": "/home/inia/Dokumente/greco_env/pvcompare/pvcompare/data/user_inputs/mvs_inputs/time_series/cpv_90_0_2013_40.416775_-3.70379.csv", + # "module_size": 1, + # "module_peak_power": 50, + # "surface_type": "flat_roof", + # }, + # "PV2": { + # "filename": "/home/inia/Dokumente/greco_env/pvcompare/pvcompare/data/user_inputs/mvs_inputs/time_series/cpv_90_0_2013_40.416775_-3.70379.csv", + # "module_size": 1, + # "module_peak_power": 50, + # "surface_type": "flat_roof", + # }, + # }, + add_sam_si_module={"cecmod": "Advance_Solar_Hydro_Wind_Power_API_180"}, ) - - # apply_mvs( - # scenario_name=scenario_name, - # outputs_directory=None, - # user_inputs_mvs_directory=None, - # ) +# 'Canadian_Solar_CS5P_220M___2009_'] +# apply_mvs( +# scenario_name=scenario_name, +# outputs_directory=None, +# user_inputs_mvs_directory=None, +# ) diff --git a/pvcompare/pv_feedin.py b/pvcompare/pv_feedin.py index 26221577..e021b884 100644 --- a/pvcompare/pv_feedin.py +++ b/pvcompare/pv_feedin.py @@ -252,7 +252,7 @@ def create_pv_components( surface_azimuth=j, surface_tilt=k, psi_type=psi_type, - add_sam_si_module=add_sam_si_module + add_sam_si_module=add_sam_si_module, ) # save the file name of the time series and the nominal value to # mvs_inputs/elements/csv/energyProduction.csv @@ -380,7 +380,13 @@ def set_up_system(technology, surface_azimuth, surface_tilt, add_sam_si_module=N def create_si_time_series( - lat, lon, weather, surface_azimuth, surface_tilt, normalization, add_sam_si_module=None + lat, + lon, + weather, + surface_azimuth, + surface_tilt, + normalization, + add_sam_si_module=None, ): """ @@ -606,7 +612,9 @@ def create_psi_time_series( return (output / peak).clip(0) -def nominal_values_pv(technology, area, surface_azimuth, surface_tilt, psi_type, add_sam_si_module): +def nominal_values_pv( + technology, area, surface_azimuth, surface_tilt, psi_type, add_sam_si_module +): """ calculates the maximum installed capacity for each pv module. @@ -637,7 +645,7 @@ def nominal_values_pv(technology, area, surface_azimuth, surface_tilt, psi_type, technology=technology, surface_azimuth=surface_azimuth, surface_tilt=surface_tilt, - add_sam_si_module=add_sam_si_module + add_sam_si_module=add_sam_si_module, ) peak = get_peak( technology, module_parameters_1=module_parameters, module_parameters_2=None, diff --git a/tests/test_main.py b/tests/test_main.py index 836c14d7..6eb9cb69 100644 --- a/tests/test_main.py +++ b/tests/test_main.py @@ -17,6 +17,8 @@ import pytest import pandas as pd +import pvcompare.constants as constants + TESTS_ON_MASTER = "master" EXECUTE_TESTS_ON = os.environ.get("EXECUTE_TESTS_ON", "skip") @@ -36,7 +38,8 @@ def setup_class(self): self.user_inputs_pvcompare_directory = os.path.join( os.path.dirname(__file__), "data_test_main/user_inputs/pvcompare_inputs/" ) - self.static_inputs_directory = "data/static_inputs/" + self.static_inputs_directory = constants.DEFAULT_STATIC_INPUTS_DIRECTORY + self.test_static_inputs_directory = "data/static_inputs/" self.user_inputs_mvs_directory = os.path.join( os.path.dirname(__file__), "data_test_main/user_inputs/mvs_inputs/" ) @@ -85,7 +88,9 @@ def test_apply_pvcompare_add_weather_file(self): for f in filelist: os.remove(f) - weather_file = os.path.join(self.static_inputs_directory,"weatherdata_53.2_13.2_2017.csv") + weather_file = os.path.join( + self.test_static_inputs_directory, "weatherdata_53.2_13.2_2017.csv" + ) main.apply_pvcompare( storeys=self.storeys, @@ -101,7 +106,7 @@ def test_apply_pvcompare_add_weather_file(self): pv_setup=None, overwrite_grid_parameters=True, overwrite_pv_parameters=True, - add_weather_file= weather_file + add_weather_file=weather_file, ) assert os.path.isfile( @@ -113,8 +118,16 @@ def test_apply_pvcompare_add_weather_file(self): ) def test_apply_pvcompare_add_demands(self): + # delete file + directory = os.path.join(self.user_inputs_mvs_directory, "time_series") + filelist = glob.glob(os.path.join(directory, "*.csv")) + for f in filelist: + os.remove(f) - filename_electricity_demand = os.path.join(self.user_inputs_mvs_directory, "predefined_time_series/electricity_load_2015_France_5.csv") + filename_electricity_demand = os.path.join( + self.user_inputs_mvs_directory, + "predefined_time_series/electricity_load_2015_France_5.csv", + ) main.apply_pvcompare( storeys=self.storeys, @@ -131,19 +144,27 @@ def test_apply_pvcompare_add_demands(self): overwrite_grid_parameters=True, overwrite_pv_parameters=True, add_heat_demand=None, - add_electricity_demand=filename_electricity_demand + add_electricity_demand=filename_electricity_demand, ) energyConsumption = pd.read_csv( os.path.join( self.user_inputs_mvs_directory, "csv_elements/energyConsumption.csv" - )) - assert energyConsumption.at["file_name", "Electricity demand"] == filename_electricity_demand - + ), + index_col=0, + header=0, + ) + assert ( + energyConsumption.at["file_name", "Electricity demand"] + == filename_electricity_demand + ) def test_apply_pvcompare_add_pv_timeseries(self): - filename_pv_timeseries = os.path.join(self.user_inputs_mvs_directory, "predefined_time_series/si_180_38_2012_52.52437_13.41053.csv") + filename_pv_timeseries = os.path.join( + self.user_inputs_mvs_directory, + "predefined_time_series/si_180_38_2012_52.52437_13.41053.csv", + ) main.apply_pvcompare( storeys=self.storeys, @@ -159,23 +180,27 @@ def test_apply_pvcompare_add_pv_timeseries(self): pv_setup=None, overwrite_grid_parameters=True, overwrite_pv_parameters=False, - add_pv_timeseries={"si": {"filename": filename_pv_timeseries, - "module_size": 1, - "module_peak_power": 50, - "surface_type": "flat_roof",}} + add_pv_timeseries={ + "si": { + "filename": filename_pv_timeseries, + "module_size": 1, + "module_peak_power": 50, + "surface_type": "flat_roof", + } + }, ) energyProduction = pd.read_csv( os.path.join( self.user_inputs_mvs_directory, "csv_elements/energyProduction.csv" - )) + ), + index_col=0, + header=0, + ) assert energyProduction.at["file_name", "PV si"] == filename_pv_timeseries - def test_apply_pvcompare_add_sam_si_module(self): - filename_pv_timeseries = os.path.join(self.user_inputs_mvs_directory, "predefined_time_series/si_180_38_2012_52.52437_13.41053.csv") - main.apply_pvcompare( storeys=self.storeys, country=self.country, @@ -190,14 +215,17 @@ def test_apply_pvcompare_add_sam_si_module(self): pv_setup=None, overwrite_grid_parameters=True, overwrite_pv_parameters=False, - add_sam_si_module={'cecmod' :'Advance_Solar_Hydro_Wind_Power_API_180'} + add_sam_si_module={"cecmod": "Advance_Solar_Hydro_Wind_Power_API_180"}, ) energyProduction = pd.read_csv( os.path.join( self.user_inputs_mvs_directory, "csv_elements/energyProduction.csv" - )) - assert energyProduction.at["maximumCap", "PV si"] == 27790.992 + ), + index_col=0, + header=0, + ) + assert float(energyProduction.at["maximumCap", "PV si"]) == 27790.992 # this ensures that the test is only run if explicitly executed, i.e. not when the # `pytest` command alone is called From be58676cfb8872a79fc91daee671632aab6d57c4 Mon Sep 17 00:00:00 2001 From: Piranias Date: Wed, 26 May 2021 09:52:30 +0200 Subject: [PATCH 15/37] fix tests and docstrings --- pvcompare/pv_feedin.py | 17 +++++++++++------ tests/test_main.py | 4 +++- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/pvcompare/pv_feedin.py b/pvcompare/pv_feedin.py index e021b884..e105bc8c 100644 --- a/pvcompare/pv_feedin.py +++ b/pvcompare/pv_feedin.py @@ -316,9 +316,9 @@ def set_up_system(technology, surface_azimuth, surface_tilt, add_sam_si_module=N surface azimuth of the module surface_tilt: float surface tilt of the module - add_sam_si_module: dict - with library (’CECMod’ or "SandiaMod") as key and module name as value. - E.g. {"cecmod":'Canadian_Solar_Inc__CS5P_220M'} + Dictionary with library (’CECMod’ or "SandiaMod") as key and module name as value. + E.g. {"cecmod":'Canadian_Solar_Inc__CS5P_220M'}. + Note that the SI module is only considered if there is the technology "SI" in Returns ------- @@ -413,8 +413,9 @@ def create_si_time_series( If True: Time series is normalized. Otherwise absolute time series is returned. add_sam_si_module: dict - with library (’CECMod’ or "SandiaMod") as key and module name as value. - E.g. {"cecmod":'Canadian_Solar_Inc__CS5P_220M'} + Dictionary with library (’CECMod’ or "SandiaMod") as key and module name as value. + E.g. {"cecmod":'Canadian_Solar_Inc__CS5P_220M'}. + Note that the SI module is only considered if there is the technology "SI" in Returns ------- @@ -613,7 +614,7 @@ def create_psi_time_series( def nominal_values_pv( - technology, area, surface_azimuth, surface_tilt, psi_type, add_sam_si_module + technology, area, surface_azimuth, surface_tilt, psi_type, add_sam_si_module=None ): """ calculates the maximum installed capacity for each pv module. @@ -633,6 +634,10 @@ def nominal_values_pv( surface azimuth of the modules surface_tilt: float surface tilt of the modules + add_sam_si_module: dict or None + Dictionary with library (’CECMod’ or "SandiaMod") as key and module name as value. + E.g. {"cecmod":'Canadian_Solar_Inc__CS5P_220M'}. + Note that the SI module is only considered if there is the technology "SI" in Returns ------- diff --git a/tests/test_main.py b/tests/test_main.py index 6eb9cb69..6d215da8 100644 --- a/tests/test_main.py +++ b/tests/test_main.py @@ -39,7 +39,9 @@ def setup_class(self): os.path.dirname(__file__), "data_test_main/user_inputs/pvcompare_inputs/" ) self.static_inputs_directory = constants.DEFAULT_STATIC_INPUTS_DIRECTORY - self.test_static_inputs_directory = "data/static_inputs/" + self.test_static_inputs_directory = os.path.join( + os.path.dirname(__file__), "data/static_inputs/" + ) self.user_inputs_mvs_directory = os.path.join( os.path.dirname(__file__), "data_test_main/user_inputs/mvs_inputs/" ) From edc6046c19acb3745efbcbb86226a53208b3a9cd Mon Sep 17 00:00:00 2001 From: Piranias Date: Wed, 26 May 2021 11:16:02 +0200 Subject: [PATCH 16/37] add decription of new features in docs --- docs/basic_usage.rst | 55 ++++++++++++++++++++++++++++++++++++-- docs/model_assumptions.rst | 1 + 2 files changed, 54 insertions(+), 2 deletions(-) diff --git a/docs/basic_usage.rst b/docs/basic_usage.rst index fd471392..cc61fe6b 100644 --- a/docs/basic_usage.rst +++ b/docs/basic_usage.rst @@ -77,11 +77,62 @@ install the *cdsapi* package. `This page `_ provides a jupyter notebook with instructions on how to download data for a single coordinate or a region. +*pvcompare* provides functionalities to automatically download weather data ad well as calculate demand and pv time series. +If you want to use your own input time series, you +can do so by defining them in the :py:func:`~.main.apply_pvcompare` function. The followning section gives you an overwiew +on how to provide your time series. +**Weather data** +In oder to provide your own weather data, you need to insert the path +to your weather file to the parameter ``add_weather_data`` in the :py:func:`~.main.apply_pvcompare` function. The file +should contain an hourly time series in *csv* format with the columns: [time, latitude, longitude +,ghi, dni, dhi, wind_speed, temp_air, precipitable_water]. + +You can also download ERA5 data yourself. `oemof feedinlib `_ provides a jupyter notebook with instructions on how to download data for a single coordinate or a region. + +**Demand time series** + +In order to add your own heat and/or electricity time series add the path to the file to ``add_electricity_demand`` or ``add_heat_demand`` +in :py:func:`~.main.apply_pvcompare`. Note that the respective demand is only considered, if a column "Electricity demand" or "Heat demand" +exists in ``data/user_inputs/mvs_inputs/csv_elements/energyConsumption.csv``. +The demand time series should be given as an hourly time series in kW. + +**PV time series** + +You can add your own PV time series by defining ``add_pv_timeseries`` in :py:func:`~.main.apply_pvcompare`. +Instead of just providing the path to the file, you need to define a dictionary with additional information +on the PV module you are considering, in order to allow the calculation of the area potential for your module. +The dictionary should be given as follows: + {"PV1" : ["filename": >path_to_time_series< , "module_size": >module_size in m²<, + "module_peak_power": >peak power of the module in kWp<, "surface_type": >surface_type for PV installation<], + "PV2" : [...], ...} +You can add more than one module time series by defining more PV-keys. +The PV time series itself needs to be be an normalized hourly time series in kW/kWp +(normalized by the peak power of the module). The surface_types can be one of: [ +"flat_roof", "gable_roof", "south_facade", "east_facade", "west_facade"]. + +Note that you need to add more specific PV parameters of your module (name, costs, lifetime etc.) in +``user_inputs/mvs_inputs/csv_elements/energyProduction.csv``. The columns in ``energyProduction.csv`` +should be named "PV"+ key (e.g. "PV SI1") if your key is "SI1". + +When providing your own time series, ``overwrite_pv_parameters`` in :py:func:`~.main.apply_pvcompare` should be +set to false. When ``add_pv_timeseries`` is used, the ``pv_setup.csv`` is disregarded. + +**Add a different SI module** + +By default, the module "Aleo_Solar_S59y280" is loaded from `cec module `_ database. +But you can add another module from sandia or cec `libraries `_. + +To do so, you need to define the parameter ``add_sam_si_module`` in :py:func:`~.main.apply_pvcompare`. +You should define a dictionary with the library ("CECMod" or "SandiaMod") as key and module name as value. +E.g. {"cecmod":"Canadian_Solar_Inc__CS5P_220M"}. + +Note that the SI module is only considered if a module with the technology "SI" is provided in +``user_inputs/mvs_inputs/pvcompare_inputs/pv_setup.csv`` Add a sensitivy to your simulations diff --git a/docs/model_assumptions.rst b/docs/model_assumptions.rst index 3807ab53..970abd01 100644 --- a/docs/model_assumptions.rst +++ b/docs/model_assumptions.rst @@ -98,6 +98,7 @@ unique models were developed for the CPV and PeroSi technologies. The next sections will provide a detailed description of the different modeling approaches. +.. _si: 1. SI ----- The silicone module parameters are loaded from `cec module `_ database. The module From 10dd84344e0ff675b8e7f5dd3c0a79b782726f23 Mon Sep 17 00:00:00 2001 From: Piranias Date: Wed, 26 May 2021 11:16:15 +0200 Subject: [PATCH 17/37] adapt doctring --- pvcompare/main.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pvcompare/main.py b/pvcompare/main.py index 6065e7c3..bb4e9cee 100644 --- a/pvcompare/main.py +++ b/pvcompare/main.py @@ -121,7 +121,7 @@ def apply_pvcompare( "module_peak_power": >peak power of the module in kWp<, "surface_type": >surface_type for PV installation<], "PV2" : [...], ...}. If you want to consider more PV time series, more PV keys can be added. The PV time series itself needs to be be an normalized hourly time series in kW/kWp - (normalized by the peak power of the module). The facades can be one of: [ + (normalized by the peak power of the module). The surface_types can be one of: [ "flat_roof", "gable_roof", "south_facade", "east_facade", "west_facade"]. Note that you need to add more specific PV parameters of your module (name, costs, lifetime etc.) in 'user_inputs/mvs_inputs/csv_elements/energyProduction.csv'. The columns in energyProduction.csv From a2c9983d05e1864deb68d5e46b2f8eb9fec18cae Mon Sep 17 00:00:00 2001 From: Piranias Date: Wed, 26 May 2021 11:28:46 +0200 Subject: [PATCH 18/37] add energy system grapg to finish #165 --- docs/basic_usage.rst | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/docs/basic_usage.rst b/docs/basic_usage.rst index cc61fe6b..6896c4ca 100644 --- a/docs/basic_usage.rst +++ b/docs/basic_usage.rst @@ -12,6 +12,15 @@ Run a simulation You can easily run a simulation by executing one of the examples in `examples/ `_. There are three examples, one that accounts only for the electricity sector, one for sector coupling using heat pumps and one example covering heat demand with a gas plant as a reference scenario for the one with heat pumps. +Here's an example energy system graph of a sector coupled scenario of the simulation provided in ``examples/run_pvcompare_example_sector_coupling.py``. + +.. figure:: ./images/basic_usage_energy_system_graph.png + :width: 100% + :alt: energy system graph. + :align: center + + Energy system graph of an examplary sector coupled energy system. + If you want to set up your own scenario, you need to insert input files into the directory first. How to do this is described in the next paragraph :ref:`define_params`. Afterwards you can run a simulation by running the file `run_pvcompare.py `_ in the parent folder of *pvcompare*. In order to run a simulation you need to at least define the following parameters: From 392adbe63aed86da37473a13082050eea8a8c8f9 Mon Sep 17 00:00:00 2001 From: Piranias <44803304+Piranias@users.noreply.github.com> Date: Wed, 26 May 2021 11:29:50 +0200 Subject: [PATCH 19/37] Update pvcompare/main.py Co-authored-by: Sabine Haas --- pvcompare/main.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pvcompare/main.py b/pvcompare/main.py index bb4e9cee..e5865c73 100644 --- a/pvcompare/main.py +++ b/pvcompare/main.py @@ -109,7 +109,7 @@ def apply_pvcompare( add_electricity_demand: str or None Path to precalculated hourly electricity demand time series for one year (or the same period of a precalculated PV timeseries) - Note that that the demand is only considered is a column "Electricity demand" is added to + Note that that the demand is only considered if a column "Electricity demand" is added to 'user_inputs/mvs_inputs/csv_elements/energyConsumption.csv' add_heat_demand: str or None Path to precalculated hourly heat demand time series for one year (or the same period From d3603e8783382c3d3e3d17052fa00b4f6a9a69e2 Mon Sep 17 00:00:00 2001 From: Piranias <44803304+Piranias@users.noreply.github.com> Date: Wed, 26 May 2021 11:29:57 +0200 Subject: [PATCH 20/37] Update pvcompare/main.py Co-authored-by: Sabine Haas --- pvcompare/main.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pvcompare/main.py b/pvcompare/main.py index e5865c73..6b5ac713 100644 --- a/pvcompare/main.py +++ b/pvcompare/main.py @@ -98,7 +98,7 @@ def apply_pvcompare( absolute and relative will be overwritten with calculated time series of fixed thermal losses relative and absolute. add_weather_data: str or None - Path to hourly csv weather time series with columns: [time, latitude, longitude + Path to csv containing hourly weather time series with columns: [time, latitude, longitude ,ghi, wind_speed, temp_air, precipitable_water, dni, dhi] Default: None. If None, the ERA5 data is used instead. add_sam_si_module: dict or None From bbcbe6d0f7742aaf1e638baded26383d387b0768 Mon Sep 17 00:00:00 2001 From: Piranias <44803304+Piranias@users.noreply.github.com> Date: Fri, 28 May 2021 11:48:21 +0200 Subject: [PATCH 21/37] Update CHANGELOG.md Co-authored-by: Sabine Haas --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f4a8adad..6b623448 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -30,7 +30,7 @@ Here is a template for new release sections - Add info on energy systems consisting of more than one node in RTD section "scope and limitations" (#293) - Added description of the implementation of the stratified thermal storage in pvcompare with a description of the possibilities modeling it (#291) - Dokumentation: Update on 'basic_usage', 'parameter description' and 'model assumptions' (#302) -- Usability: allow the user to provide their own weather data, demand time series, pv time series and SAM SI modules (#317) +- Improved usability: allow the user to provide their own weather data, demand time series, pv time series and SAM SI modules (#317) ### Changed - The inlet temperatures of the heat pump and the stratified thermal storage have been revised in the pvcompare input parameters, adapting them in order to fit typical temperatures of the heating system. Also the pvcompare input parameters of the stratified thermal storage have been revised (#272) From d44bca4b5e17478a345ddac15fb77dc7108e1409 Mon Sep 17 00:00:00 2001 From: Piranias <44803304+Piranias@users.noreply.github.com> Date: Fri, 28 May 2021 11:48:36 +0200 Subject: [PATCH 22/37] Update docs/basic_usage.rst Co-authored-by: Sabine Haas --- docs/basic_usage.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/basic_usage.rst b/docs/basic_usage.rst index 6896c4ca..0a755bc4 100644 --- a/docs/basic_usage.rst +++ b/docs/basic_usage.rst @@ -89,7 +89,7 @@ Two example weather years for Berlin, Germany, 2017 and Madrid, Spain, 2017 are Provide your own input time series ================================== -*pvcompare* provides functionalities to automatically download weather data ad well as calculate demand and pv time series. +*pvcompare* provides functionalities to automatically download weather data as well as calculate demand and PV time series. If you want to use your own input time series, you can do so by defining them in the :py:func:`~.main.apply_pvcompare` function. The followning section gives you an overwiew on how to provide your time series. From 07ac732c55a818702689b87745ab68afce36ef6e Mon Sep 17 00:00:00 2001 From: Piranias <44803304+Piranias@users.noreply.github.com> Date: Fri, 28 May 2021 11:48:58 +0200 Subject: [PATCH 23/37] Update docs/basic_usage.rst Co-authored-by: Sabine Haas --- docs/basic_usage.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/basic_usage.rst b/docs/basic_usage.rst index 0a755bc4..9b90b74a 100644 --- a/docs/basic_usage.rst +++ b/docs/basic_usage.rst @@ -91,7 +91,7 @@ Provide your own input time series *pvcompare* provides functionalities to automatically download weather data as well as calculate demand and PV time series. If you want to use your own input time series, you -can do so by defining them in the :py:func:`~.main.apply_pvcompare` function. The followning section gives you an overwiew +can do so by defining them in the :py:func:`~.main.apply_pvcompare` function. The following section gives you an overview on how to provide your time series. **Weather data** From 6a7f11eba75554b801f6dd16c486898078431c7f Mon Sep 17 00:00:00 2001 From: Piranias <44803304+Piranias@users.noreply.github.com> Date: Fri, 28 May 2021 11:50:31 +0200 Subject: [PATCH 24/37] Update docs/basic_usage.rst Co-authored-by: Sabine Haas --- docs/basic_usage.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/basic_usage.rst b/docs/basic_usage.rst index 9b90b74a..32031f95 100644 --- a/docs/basic_usage.rst +++ b/docs/basic_usage.rst @@ -98,7 +98,7 @@ on how to provide your time series. In oder to provide your own weather data, you need to insert the path to your weather file to the parameter ``add_weather_data`` in the :py:func:`~.main.apply_pvcompare` function. The file -should contain an hourly time series in *csv* format with the columns: [time, latitude, longitude +should be a csv file with the columns: [time, latitude, longitude, ,ghi, dni, dhi, wind_speed, temp_air, precipitable_water]. You can also download ERA5 data yourself. `oemof feedinlib `_ provides a jupyter notebook with instructions on how to download data for a single coordinate or a region. From d2dd2c4103a64be8c57659d8c9ba550bd6adeac4 Mon Sep 17 00:00:00 2001 From: Piranias <44803304+Piranias@users.noreply.github.com> Date: Fri, 28 May 2021 11:50:43 +0200 Subject: [PATCH 25/37] Update docs/basic_usage.rst Co-authored-by: Sabine Haas --- docs/basic_usage.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/basic_usage.rst b/docs/basic_usage.rst index 32031f95..d9cb0e1d 100644 --- a/docs/basic_usage.rst +++ b/docs/basic_usage.rst @@ -99,7 +99,7 @@ on how to provide your time series. In oder to provide your own weather data, you need to insert the path to your weather file to the parameter ``add_weather_data`` in the :py:func:`~.main.apply_pvcompare` function. The file should be a csv file with the columns: [time, latitude, longitude, -,ghi, dni, dhi, wind_speed, temp_air, precipitable_water]. +ghi, dni, dhi, wind_speed, temp_air, precipitable_water] and contain hourly time series. You can also download ERA5 data yourself. `oemof feedinlib `_ provides a jupyter notebook with instructions on how to download data for a single coordinate or a region. From 809c09ad31d990d4676cf9e46fd6a96b9591f638 Mon Sep 17 00:00:00 2001 From: Piranias <44803304+Piranias@users.noreply.github.com> Date: Fri, 28 May 2021 11:50:49 +0200 Subject: [PATCH 26/37] Update pvcompare/pv_feedin.py Co-authored-by: Sabine Haas --- pvcompare/pv_feedin.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pvcompare/pv_feedin.py b/pvcompare/pv_feedin.py index e105bc8c..0f935319 100644 --- a/pvcompare/pv_feedin.py +++ b/pvcompare/pv_feedin.py @@ -766,7 +766,7 @@ def add_pv_timeseries( as user_inputs_pvcompare_directory. Default: None. - Return + Returns ------- None """ From fc6615dc9a13938068a037cbf3e1e0f63adb1d33 Mon Sep 17 00:00:00 2001 From: Piranias <44803304+Piranias@users.noreply.github.com> Date: Fri, 28 May 2021 11:50:55 +0200 Subject: [PATCH 27/37] Update pvcompare/pv_feedin.py Co-authored-by: Sabine Haas --- pvcompare/pv_feedin.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pvcompare/pv_feedin.py b/pvcompare/pv_feedin.py index 0f935319..8e4a0069 100644 --- a/pvcompare/pv_feedin.py +++ b/pvcompare/pv_feedin.py @@ -776,7 +776,7 @@ def add_pv_timeseries( if not os.path.isfile(add_pv_timeseries[key]["filename"]): logging.error( "The PV time series you have specified does not exist. " - "Please check your input or set 'add_pv_timeseries' to None " + "Please check your input or set `add_pv_timeseries` to None " "in order to use the default pvcompare methods." ) return From 141c2215603efca32692830945b4950f3f2dda76 Mon Sep 17 00:00:00 2001 From: Piranias Date: Fri, 28 May 2021 11:57:13 +0200 Subject: [PATCH 28/37] fix heat demand if file does not exist --- pvcompare/demand.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/pvcompare/demand.py b/pvcompare/demand.py index 52557ada..ccb713f8 100644 --- a/pvcompare/demand.py +++ b/pvcompare/demand.py @@ -131,6 +131,18 @@ def calculate_load_profiles( " thus calculated according to the default" " method of pvcompare." ) + calculate_heat_demand( + country=country, + lat=lat, + lon=lon, + storeys=storeys, + year=year, + weather=weather, + static_inputs_directory=static_inputs_directory, + user_inputs_pvcompare_directory=user_inputs_pvcompare_directory, + user_inputs_mvs_directory=user_inputs_mvs_directory, + column=column, + ) else: calculate_heat_demand( country=country, @@ -163,6 +175,15 @@ def calculate_load_profiles( " thus calculated according to the default" " method of pvcompare." ) + calculate_power_demand( + country=country, + storeys=storeys, + year=year, + static_inputs_directory=static_inputs_directory, + user_inputs_pvcompare_directory=user_inputs_pvcompare_directory, + user_inputs_mvs_directory=user_inputs_mvs_directory, + column=column, + ) else: calculate_power_demand( country=country, From c3524fc210b22ffb84681351a9ea5295d1006664 Mon Sep 17 00:00:00 2001 From: Piranias Date: Fri, 28 May 2021 11:57:52 +0200 Subject: [PATCH 29/37] add energy system graph --- docs/images/energy_system_graph.png | Bin 0 -> 88377 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/images/energy_system_graph.png diff --git a/docs/images/energy_system_graph.png b/docs/images/energy_system_graph.png new file mode 100644 index 0000000000000000000000000000000000000000..f6cc06eaa71512a4310a74b7b968693f7f59dec8 GIT binary patch literal 88377 zcmagFby(Hg_C37mE@>pCL68RNknWZgknU~}qy?nAyF)_hln|s#x}-$91O(o-^_+X} z@B7bto<~vl-k-hJTyu^&#+d6ws3=Keppu|MAP@{$nHOph2wXJyRf~)W{w2LOP7VTj zQsb@h(pAmagVNF2!Q9H$jMCN1(Tvi})5;tI@m#3Nv~VVEP7Zl^jb9J%Sx@>ce7^hX zn~tETYFujSHJcGsaR!xgE+g!OgFLqn_gAS8>&jIl8L4t3EEdB#-%QT3D9Zir8*Xdr zPwsslrpXWXp;SWzT%Z?S#XImG%9j|836d&w_+f~9R^2dH} z+Q~aUpWcaHUv)a}4ezhtaoul5^zPI54(Ir*)_bhl?_6AEYL3m1EnlQYSo&*DV|?@x zKzAstG-;w3_Qk)a^Jl%PIMKBGl#uvL;9$+BWm^zOq+jxrzQ@49tzXL*TB%OI_13F| z7kiB)?;QLQw-|p6lf4p0W7at3z2l)eu6xr-;4!v%cwJnP>Ggc&2N{x!@AsHj+d2N% zIlgHw#p2&>{rVW0yA6~2%otp5Qas|YJq*3%dAl55)toP4T}YJ0cf0oLH+S0)xP-?o z)hwX$js;%Pc8IWiSJ0_}!+tWF)kH)%7%;+0laj@nUSN zw)>6G>{5kYr~e(2j!RADbp~U5O`Aouwj!fLnB&`o!pt~!3NqqnLlA_6Bu+hpD8n@M zQQI>v$y0q(HT$p5Lqv>Gi`TA8K8OBhhc&0>YIhZF*Et*(i7gLO+vsJt*`HQT?IL!z zN4`ykyeq?Sr8wH_Ai38a7J2h)<(9Pl!2M_C@Q7*?Ebo45cg(les*<^8aX$0!*gMbL z8Wz@n?K{%$P$ja57m8%a?^I>54oh}2TO@HtzJl<6PFjBtM!#nG>+vEiCrXHe3`(ske1b9Ly`=G#lut}UflZYmEoAQ3#QdUn}Y@! zxBB4uOFF%G{2zwx6Sol_ryZ88zYFSOGS2tW-#XqUkSVWPFhKD+o_&3}Z_362U{ zbG3EP^fQ+|`;<5oJ>=WM>8V^5eqNcJLo;3?)gQZF2@;YesyI6Y_Ij=F#cEwpu7j=o zAdkfInp!xNrL(>l>wY3cZ6c$v$Pt=YZljo%Q&C$?@|V}P%u2_`Xn1`ReyRR|`P}|w z(M|Uw-oVIr&d3>zkzA(t#)po&Lv~NF@`~KI`b~X7L2unkalS=cfIaN+oi%Nu{3Hdf4pM(b1fu@?WGQxC^ zS_NG=s-3sH`1x(A+d|npTU;X;a)w*sgtpMr>obqDd)T^&@0Z><8Q=N+R=H!~5BNka zrt-qJQwcvc``Pnle~QV-Q5tMKN?YGR9F9wP&sB}$U5^(QlbPm@a*?Vq`^1ZOfss2n zZTcy@WQVLEHa|qR3D11zm32*c#s`79=u*9zD*Fv2=X(Sn{C! zXz<{9iEpm;lblP+AMmAzBWL39T>&_`*?3$ZG^aExsggvOSj=HmF;$T4Q8AqO)b=|E zDqeNXuE!-yJ&hl6?fuD%PPL`jtU~d*`PvVG+K(%6l8wojMu07ZSmQUb{>X_+eA8wx z8r)m5w_?9a<2c%2kJ21*G#VWI_f_Ysj5_=;SINKbTCNK3qanu#qZVC=Q~lf?;(s3V zL+*)5I4lvY)xdrT50ZgmF}~7=4i=N>>PceCEb7)5bGh|+cOOu`z{9CfnmS`TOCU*5 zk*#D~z}TA7(S08qj2`y-W-U!~7nX7^E*06JMcO5>9`l@V)*+9i_}$0HPRP^n0#Y2k zSw2?E;qs1w?q#Rb7Bm`Y190=GO_zHJ)xjxWGace^Ik5#K4}CoCntX3};L<-)-(SGE zyz=o-PMqzB4b(%?OhZSINgZ(Q$V*}JZI?S}bWFiMFURpc@;PBP8qDsXM9MW5jXlOS z(VIaDd|aL&96!qZs&~Jm1ahZTl*$Vd}XeErF zPSI?UYCaWVjak_*V9oK-udpFIHn+tUtX-r46jKZivC%{Zgx-Nb!k@uYziE0sav#;f zxkVWw?@_|U9>$#xn&}#nKNfZpz2~5$z#w=xZ4f$}ms<`i*^)waA-PfYcrZNsG!E_{ z_9zu%yra#H;ACtmMcQZg_G@QZf=smfu9DM!;1X8vKM=*Akz6*RDzG?Ik~=hN9VRCdM&mPhbZ(!UqYQ85k0UkIXJt< zYoDTx^({+}zCP@1tEmGCYLSCaBb=#J1b5C1MXM*VU3bM;IKIyUgBtD&^C-3YY64b? z+Aq!`sqIF!foDO#HjYWWvCR)ghKHumEAPIN^ zi?oU!4D&9N;?o;rCd$|^tLO4ESTQ1aZcpWabOyz(*)^4lo{*3WSB35DsCH97N2llg)LE%8I#B}Dh9>i5- zTWKs9v5Z5J<1-0g{J^CdJ`5Lu(xQIt{ zZZBM?ZtPY(h-DZIix>mUCs;T}9GX{`_PJ6RyVTB4m6wihvyxfTur}wq3gDIOR=B$1 zuxEx+6|cvjV72>uYYlnA}>H%vxgh4Zs-4*iakKdk(pi6HSkES zY}b(B1Y;Q^I9+aaU$-*pC7QlJr7Zc^S(ShkIv5+bo`LSMka=sJNGs25rBkjhHzK-q zvSKq;=~O)9pQmi(KgKB8!}>9H$MeU`>4^d|aYSB~ch$&A7!PTbc zC7KlL8Awn?%6`JAfD0R~8y<V>gE1gD(y7f5y!pF57`{*eF95;=wY!YTa5%xbM5#jU4tHwoC*tnuA z@ra>83|so^d))4`Qsy|4Q4Fg(d)Az8_?5Ayo_aSF02AO3WE~ya*H_(X!G+ z3}i-Rp1g!a;^iDkIgJ4lcKlZ10W3fG+|a6edXnKn#&V>W#gt_x8$?l9Zi6G3MBE;E z*{T<>Ot^E>HpCUZ!+Gi}n>=3Ju;(J+XK!|t!G+je&YRlm>k)s0xtd`~{TpQ$_*3OYky^_r*ri~c)SntuXCL|m1?h|9L z%}Bat68hngmEfn|hM$NjcEmWwqvHRZ9xRRa{~#Vd&0Q3bG+^LJ(OMw&qs?-@K`zK$ z0^iv<5!oG;D_Gwzj&}DY%{3(KDh>JP6hW=@10thF1hVV!OSmOI70M^eVw6>4BA)(p zj7#H4$xltpX!x>_&swiIMU++G`l602pJ*U;21e*#osa|zRQ@vXm6v+0^K-EM7Nx+( zu5?)yr9FNIk({PRgPriOrU`{1cIk+ouV)`3C0{$XV{A$KQulkBtw#jy>ejom9jDiA5g-j=M zJ``!dv^|R@oH#y5*|R{I{I_yQ4~+`ymKZG}R(>VO)RnzG zX5S)lA&p)t(}=Ec$Z-j(M!cQd(V&35=; zjSjAB*$sKB4$N#(3Altue*^~GT{RCoR#XY(+|3;=2DuG z9WOFqvE^p3=DgvUgC?|)H(+@rQ(*49KMXRG!?`RJ9SP|w&{4Y$mT*~h22obTl9y=U zs*826g$zUqu-F>S@PxPCNB&ArH;OeH5m0K`kL8L&L-=Ore6!BOrr@ew@s&c1r(5}( zi_eI+?%ilaa!87P@N9?}5eaeHfK8aoC@e0>M9^C8^=d?9PbYT4ez zTnq-ueSY2K?avIRr0G#ayRfNd&vBpb=C*6Tb+O8Rq+)oky>F&+jobZXRXK-Ma)kS> z>ZfE9X;$5&#~zyRZO;ni`mP!b8($vM&xf|fd_mB}9sT9};yi!_7Lp(4kmm?ev{A?HTWf#6MUjsg3g;A5AkVM%z zOwl)7PTX%Y%`2{mC#zc^TgIa`TD0IK(ZUL&>An2)2E|-{$6Tu3KHH?jIQ}C`%OX#o zRfZx{E`=Sft%`xK^2s!$*1XCiJTb8zFpRRTvL2Frvf9VSy5DSeqrycGMl5MmM-j)n z6*F;0mUd|vACC-0&dQn)OU6n?+gLg$>Q}K*KBW@WMe!=RxOcPc3mCHeB_5WPB+&1f zWWx~@pwtkau}yKH-+l7(aJ%|?zlCvpxj`i*$2izkQaD;_$m0c~MaAIWE2Sx(Cens$ z6x6y$aCQauR;C)yW%hA?>WVAt4wbaETS{=Y;;Q87_D=95RZoy#9GC?$jz4lTboGR| z@+OT_~a@`fD zjxt#5+QD{{nk=+mg@g_!yugty%wl4Fr^RQPcVP13n?CATzjco?ho!?hZqWt~gC}Z6 zDa`>k`W?Sb9c#hQXVF+&RL*|iEW;mNn`!)#!S&6llk}s=R1jU2J9AOQAiqrD)2bK| z){TsllzLX=T@^7!UdE0wUe!&Eg0yos(E)LE9gq7h**%kVcd{60*Cpupw#If%J~;}; zryI4zjVBuGg8&BN_eB~7wWC3=x{xo2x_K*9POYkoc53-p-B0BS4>!c5>KEzFFj#9p+`HOwA&g!h0nA&LYs&eR2C%JILdS+~^TLcawb|v38QQ^1c#=Po#PJ z!ZxIjb|tgn3Go)(;nRXXi8?)xezf`jUK@kw7V(DqB@>&ba3cTHO@9IKRK-;!eAS zoOPDN#_bUS=l2i+?4B&$i&i~*+}yYtBqr6(vo^;QnVNYKvUTz<-Ln%Swewf+PtVw0 zA;H0MYJ(mMZ`X>^pCnc-YvT?$&Y|RA@?enGBoDp4d``7IyZj}=P+eL^|CXxWr>=|E zjl~hmwK|#QOT>G}24S=l+c(=}1WTI7Ei|J_eLuolk0$uS?>n8?Tn0X@Vi7z#BoipN zKnf-JCPTqL?k_~wPS&5FsAwCs$;Z1NHI1oX%+kP|pPeVw*p@t2h8CqnPOwXD>zxVr z@yYk;iJ$(Xc59h4rr*Ufd_o1|Ji?L0nG3Y2iy>M|iUMCk(IJhW->e6;6DY?>ozwDb)j=Qs^H6-p^-LXXuS~qOWFw7-;apuU^#i;Sv<$6` z9rQ6+t|!dyZG53bx?k6p^0v%`B9p7xDv2tC@ZMf3%oM|o))f7w^+$8qoTqp5sCXN% zEt11t15SIY;TjnE%ujq%JRcuG@Zi(~0+4HmisSCJ9tlIXzPlh5 zgqOT>6#2PXCbWh=#I(*KQ zEWhkI+hM@3qRzGjN=vgq=kIGCSVY<~Ln$n>#c=eKgi8x0*;h?^XH;n3FC~&`WdjBC zr%1^aEAR|%J8)u+>`QJ6n}^5G7zU*jZE3#TWgWtrdq!|aN#!+=jR=zr!PSLhs^=mZ z&?s|<$Foe@hfeEGSW~{xdn<*PNz{w>XlfnNVZX?+Fqp+e3zL}pJ%Y{Po2cuiN&L6H zqm&4@dhkj%fchoKBzP!JxSL<5djzZ*EEU*urz_N6LDG zLCNhc6Tva9k3BR9R?Y3&g>Gx9=-!hwKRytSVNg6RuEJGKU}K(od;aaxG)SMxKqyx= zhKB+*fX-X0!p;acm`D`QN~eRedHB)(dx8QvtYlF^1O9wUF7s0-XEnBgptue^E=PEi zIMe)|vPLuOcz8%zL}Z`KPjgx3S{QTn+P*#mm{$$_RvlA_aw;DOt;ihl55tdlg4wn> zdPsF`rw;pSgZ27CXGWIcWUWHA)!-j^S(Metb@JM|;}Hj|{b=FM(z4@H8F16W!;v2n zXIr0%*_5NPcUUPCpM13_B@5olU--46`bCQO;mDnmCXnsEJ-{ej^~d+OB-o+j1{^_L z%Mk|U_j^Iv1P|pi~G47E>)0=QL9!CSwP@-`WHqOJX4RqeuE`| zHNbk&PrzFnSxbzu)zY}lzQ+e23;P~3ZL#Kkl9F!SY(2(H5Am=Pzf;eBOZ+5><(r_14YR*TYi3IQ5FjR51t)J_zc{f7~5OhY5Dgh^rpWd^hd*23GN~p0~Evv+D zdDwT=BXi4M+K)v}8`P9Zk zX-R$&qp^I8OS8@)hX>{jFUxSNQNbinaQW6MIjqm z0`aMP#v9{x%wN9Sgec!6)0ZdU*Oa|fNJ$yO&n_4s*j(AmNb7T3cl;9QP46#$%9M`D zO^P#2Z)MMoe0t@p&=;ogS<~-{f|d){=OVTqSo&Yc-cH;F18`qZc8h3f6!i!0kAE?W@*o$J)e1Np?wzAY}g93I=~dUrg`a{3Yq=^{$I|CFBpp#-t;qYw^js zQZebh*?VH9lW!uVqpfc=u@@_aE z7f6!hBsF`(k%7R6R7M6gH>=A;&6$2)6}UL54_lZw5;(oql?)$_1@-(lULZWNGtj$v zgXno+f?!a7>9V{mEHOp|FE}$U^*yL!?tNfs*h^MlTF;RSC$T(98QLJ$FcQ{<6|Eaa z3nCb)us7|=9;6U22wHJKOccROQ!MU#gTlZV4CnGh3wF%y~Uyt#Kjaj@_L$efD;-!3^ z(NrO2D4kHN``s&&a~d3jl93X9i>HMf^UA@cIqH5sgo93}*rd`k{&p{3Ce4u%JkM9u zkF`dS!4{qwpOZ<=hC9Zo*6T>??&cYQn;LiIC5neT3=}b+7K2wlHUE9JArX z+EXsuG#So}6g~}SnMGZ#q#ud10roJzDtB5#_AKG6`d_}N=+{y{hHvcL2qT`I5-aNS zx)No*!@>wHRmJtFJrKVU*Cz;zf7=u|88{~P!m|AB^WKUeU;J}rU8QjEA7}6T1iOer z>I{oq4d{hY%KSb{o0j=-d1WF-e{5JsW>UPj?YDtxuGtA0uc=lkU3=@dq!XOO4&)a3Ic+%O$kweYbBX^a-i6Y4p$ zlvO@LG6GNYZ-a$95xt*HJ_K!Hn$t?qW^7pVIprc}t2?AP`E3>b0gHDnKqsX1{eP~u2~LE&vMz$yoJdH-=%TxWO|Kl zXIy8Fu@i?HBZH+t0@RP6z(W53DZ+vNE@}l2{h>kv1O1UG1^xa1|E0ALzTx0~Ym+j{ z%5%T3&ro3bfCbH`ubl_qWgsx&n4*Q>vnQ|~vQHi;?X0ffs z{SD68xW=D#C=Gz`;^oz*rKJUrd|f|}M?_S5xZL{BCQ2SXe#{KQ@h3WhbzJ>@eP71L zV%QjyuM-jy!o1pR#(=YN8;)bf9VLjeN=^DZJ{y-BKxC9F4Zrb7GQ$D%UE&U!FaY@PD{o~N^Fg^u^^51OLN3NJ*0-wmtB<%@U{4j6(?)`f$M@Kf}Kjr60 zB`zU>PfYv;TeFF*WU4GG3O#Ma{GSXk0bwsHDZzzbk~1{S1{L)@JMPa?Bh7d+G+(|f zeft&`JhOK302K{Q-P4orpJ%fFCv%$c|2K2=pC)`M3=W2$KXC5}&|_d?QuFs0mQeo_ z@KPp%NXh2rW+p~PD)eb@aEO6{fj?H-1^zx$1>fZLYY@wluU{3wXA}FIn)t4-uW|ks zhb9#zr6@Z)JLz1w?%2Ac<;9N~bj2cQ$>o;+Pgw=(G7AXkZEbD6i;1ECTR7$MGuBDH z>nci0n8vxY;7tCX=%^(9Cpy!*N+s&V#KasKBf)=;TGXxf; z8o%4iGOMX#-B$Oi{DK05x%T^;eQpy9dgW|=mf;rajFDo1R&GZtS%mCGIHHQRX2S$_ zD{X0%tU;J${JSmt)zrw489E*wt^51?p|4-3!CnM8f}|<@&ZFjz=Ifuiv#Y9?C?%!LQ3U+}d6blySve;1pbv8T$6QTLw$I^np_|kuXVBz+V9f7LW^hLyy@)|7f~Q-C+M^yLY2hG>O}! z`)rlo&TLE?h`PRh=I`IXJ#o}YV5Z@bu*j#o0^v|LIDXyi*Py_NHliXUt0*W$fv8I- z_Y3>oSoTK|x10_!D|@vY6SbU;3b@T^YFpi29x$=6Xyyp};Q@3+qVQD#d7xFHIg-IU z2fk`+f4|~nbHE0CHl5Sr{qMWGt-c{eJ#!;;*U8~=}PDq|R7rOuamgjTWEUheb zk;r4ev`a$gQ+%NWc2uR?Sk6^=sj=v!4Q&TnRg+P~oSrbyCF2>ix`S4dHQnrD(SCc_ z3h#`vNZ%$y?y%@ z4-c;}jKcpVG^pgh$6|hGBfJ0}rrNyDrW>r(W%)}sX2DNdIy$-dWEMR-*@Y&jg8dsb zgBtq5(NQfgujY--O_W|mHXO_~y2I8ZVV0M*qTm=PqpaPJ*Th(K8)Rf!QUWAt@gm zl!+0%=m)9hx{y~EKV4@gFRKO;yTXzrG_S6X18l#!dbQDJj?uw^BaPLvbM)g%`GS(& zrYnC^TpU&X{8zM;N#xvOt8cY=h*;#6pH}@d*vjX>rg3t+?y7KGPlvNX^f^Gm?CtH5 zd#$EC)yYqJ<$s+x=XSWHqpGS(!fT%?Cog}o=+L=0qy5S)DS2~F-;?#YYMs%4q|{j6EE)^_{+{t>(<@y*RNbOS(iH$55K~Ui9*?(zst;-Ew{LF zqW7}7AFbG-lk$xtqoQ(<@Yq_O@6U~WYxStHS#I?>;z2|wGJ;1yAQlr7>))Lyhz7)> zmks^(a59V3;zzq^Q0AL^B{@9B3TbLqt&)6nyI6=A25if z5LrP+L)%2yH&+1f(6H$8bKRSiB;$8=R6K|-=QjC_jE{%63xYz64oSJey0czsYlh}r z^kd%lqAJvGKc;2Da^@a8w22Yf2d|d}WHdkA-(IYTQCL6R-vz7o`QKe=vlz5!yzY;p z0*}c2VyY%C{`RN4fN`!A)Bkh}>y|u;u%Wp*ZI_)<+9)O-pG#YC>HI>e7gIw^g(y(1u@1yO+tA`tH@X2|2cz6an zx_)Zqc2zP%|7)`}1v)5Q=$8aVq1$MU|EJAaN4_T$_!0WpUd7s)$yg%}tYX=7Gr9#J zFUV~(&{dQEY2^LSi9nLkDW zWq{=*T$b3zkfxu1Tb~YdSZQ)n(ic;XW`F4UfMg!MxP_M9(4rr}YtW)wVd3Crs`PjP z5m%&3kc}qcj;9g2JD&m_3ow?62CFH6Lf>!he!Wp{tWHfO!Y3rmne$^{Wu46x3z{yJ z#ci~mSBnw4OocvQb~0PYhs$wIl-p|Z1prxXXXiS9@I48aPLqYQ*5kQ>x}WT;G%K`b zZgvW%_B5oVLcf}GK2wpS4p=C(Uv2@}pQ@&=zU9h~@*S2qG|ywzPn%jQN<~x@5(p{9 zc}fsDIW=Xo?0CQkxMTPK6xt-M${ry6V-+CvvUybe2T*=L>GD$$z*1yJR6ww&hl6(0}r=bZqc-vt(*WEm6(~SZ$)u-cIGz1 zJ!c6PR`>F$H|Y8{cW3O+o+HQ_+_Pi#e{hds8Kkg}l%C4q8A8ZzasS@q@YwrFjj~e#dorqc0M}!NH-Rvhr)= zvo|YRN=ol1zzOO;_>zkFx8V>F^rKBhpD0qV^;frF>MpxZDJq1!;DEz$15Jmso;-kr z_AhI0bSIek{Q1S7Rsz~GAo^~17jwg_s}G68_ou_p;_r!)ee^-Vm70Ifzb_G(X%QC} zANA@)gZ2{8a`;O2bwAodBRJKE^3Y1fUK)8(wU1hq@Zz3Fx_3ev` zOer;1pQW)?n++$&7lMAAb=d+q{hS#9$ z+VP6dQJGi};*Zr%5o1WH6UaPg7Z*)6HMRZAWq@71p%_y(HQ+8~PY-AIDBx>y;B=-Q z?vEazXt>bgRsj;xQEXAj$zav*Dr@^|n#<^?qowA0K(5b!){m7pG-%vj9ci1GH)C12|(^DTaP+!qlN+dv*~+>ztCut0w_sdVId6$F~M?dTF|ZFBghyQ_3O-Ep2v-ACqQh+Pqwr0mmibFb(H%SoxVAaiIVh zu~y|vDxe`iBJcgEsL=x5@8Z{HOl$So$%!gpYETq%+n-frWMrg2*c{ z#wR1I0_ghV3w_Qsz}7|(-0Rz0W}qmcR4&_VJ5BDBL9J1soSfYGx7RTbMG30gIVeo7$+W1!{cgC$yl2nnLFQUjR= zARkIZ0coTOYyy)gctKIXrlt#|W8`_Llt4{zd7oQ?x|PxUWUnbI8UTQ+2$XHkx!ums z`TC^PRL=!BD3iCI$Pa;qh2^pwr@Z@pHWts6b5zb>SX^9gF_w)d1>pvbKnwg=m8oDh z@Sg0)blKE%{CHgz2x9j0f`=K7-_bHDCKAI;K(Gqtd&XlrZJy{E(gC_7Ba$SCXH z+CJI+FjE8qRaRC8MP+Eo%T5Mi370}?E5FkjAXODSb_%f8($lm8U;aYEsHpKYjdqJ#PEJlYJ0cHzy7wSurc>EpE42y(paZ>_5#%P| z<-K88P{*l4s3MKiqTIMQv_$X=7i5|yFE8(1R8*yA$%-d{IA~qmU9Ike%oHwJ)b}}P zyaCC1v0u|^4a$i`z`as|PQCGGjxkZm?>sK8?SI**0#v9U<^wrE!flvF4ocS6 zjG)dI5Q8)6>XMQn=407a;NMe%ZeXTS|1w(mKzVS$(3X;E4V;IrWg1#qD_}!_Luh)s zcr;Uyvd~}!l`!fc+xR!Vn(u$dVcHv ze>JZMTwhZ~MU<$?^rw3(z%@K_a-~0eD+D>-axts-Y(AI|Dr8B7yc;GbCmVdPotNF_ z3@r5TK{Hbao6^+PEe9vOmu^#CcIl^}s5o-~@@Q0|7_#OZ`R<*XjEqbbNxp7^;Bglm zeb!|ezw+L9*8l3}rUHO3z+7rEr)qzh<9iyB&SS^47xS6~0Ogzht(Z5hsj;ytd!%|L zlLgXP0L05|=Bllinm!P)>X$Y&aLLl=_*5|A;p6WCC^7>X+4%0i98@FjO9H(O5OnZP zp<~0Kp@$ZGKY|O8ehykZ&Z9>r3aM;?Y)WkYzdbjHm}|Iz%0ht?tva2MrXU7sECrG* zdU;^Z&}YOF@M6_Z_6D!lx&r%0vji}D*`h$BAdZg$@^YLFz1MRm%L84uKbm)Cx8(p3 zaST~0pn9VS4L!R{0e{88!7;X7X`A=F-b#rM#du5t5R)5Z%YMrUFb^?g`wcvn&47&T zhrW5DSn=`eiF`?V7MI^U{f`|g8>%+{s0AXnuBMH5%u(axDw}cAUU9Js8f2Y-PU5e3B9>y zRFq5>$wy0sVG;)+VsJo#gqoXshR=03_M{6AiwO8SN%m(;E@Q+%@4GCUgH9Nll9KWP z@UAKQ+g~5wr}P6RK+VK7w7dAJ=7YzP;pPCv8!mpgAErxy{Us$kfCK(uIq_r@q!K5& z*LR!(pc^#f6%_#oFak;`hAgwv4@YB-s%a!t6`|!1!?mGdT zB>7*Roe6CDIm}k-6s<}~NL&m*>&!gk`IkqPoXsfn~CrG;pI zejXr%wy&??Gkz%ISG6eV`a;?`eKq2K-C=#&53L02Kp6XlHB@_zZG4uTN7pfp`4<;K0C2XeLQf5o#8L zW(xq!&=ufeN`^7fOpAa0d?f*kt|iz2dCmn8==hHw<%4uQ`3$FG1Bf{j2S=S0rmD~) zV`6p3jrG>|?@;c1b22~yG({cL;^jxX#RhQnz?FCK232(q@Y&|q@p|=s(A&4?AR3n7 zB%!B4iYZ;R=Aq;jE*^v`>)Ow`m8=JjcWnMn7& zcmZMFhs`@t#fll;=RYj~$zXpQ6cinSOMe;+(nc|rt=n?G&MbPd1}N^=pvV4^+bwSU zBnB<6>>a;0(B>|HFU7U7u@MElZ)%_)p*0Q4-O{oYD)G&R@aE7R_`` zz;WCJQrmqb+k2y<%Aob*WK^Ye40(I0t#v$rXMjGy%{8E)Bnj?l-SAsrX1`<#g zup2~7(%m@Xr@-uivR0sB^(A55(9jh2kLJHy7%{K^ zV%_)%z6d9vL{?62vRt!5>A7Na>tcsrD_~6{@O+S^&_AFITcQyUfQCWn;rE$ti))#E z$MyE`eN*NSi;d3_jdWmq0X5%U$}yDv9H8YrpQ%&=?Q8(z_O?=9U6$V7gZ6CmC7u>4 z-`d*Sy*MC_Xv|ubDj+8seXi`yn_eV&-5z}6cK`V@DLGl|3%qEl0T?44pYy^zd$tVP zD%A2D8X6MZ_NRF6{NikTWD4Y$vN8Oc7SycpFk_4S&DhSk4*c|tw>V^d(x-E2fYYw$WV z|I}FnI3w_@{Q96lO#YW^VH&UH|8)giqMky-9vK}y1Kw8UvEnswaI_CPi7RkI_dYJ# zZw4Z*CI9sW_GSTE{+ureghMI^3JmJ?#3v+N0Qi%S2c8<#>4y@y_;UcFLttRU&%fYy zTax3i3mgJ~=%6vD1A7vf-wpQ5{D6+zjOU73PZmZ%h1~$Tk3#4DO@&P>93r|3aMHlL z%S*Do<$!Z&=i>hF3}-t;(h7cU56FVU_AA47;3ZXK8F;wFEXwcEBx= z(!i(pSbX9F5THCiUmO|+pt&2&M@VSt>E+{vf2{?{705#2egrhJNq(p@0lmp)s#wu_ zp`i@w-nJgL$p3YILD9?r=Qk-Qrv|WcYe3dH&?P{uN&rWOqNCr%jCS4PLAtPC%c5}1 zY|X2hjSZ9c7KL1}T@=uTk_r31gr551%7A1f!547Kz&aOPgDiD$5fBiR=jL`D94%pjrYHU%6_5 zls90b7XSimK)FJT6mVxK54NdpmckPGU8|QO1!Uphf!0}mJ{N2N)P=d&n;NL1|17Jh zs0j*Src#HK+!115C7;3yI-b)oRXJdL@r3}5n^xzIO2L;f~xfUfsr6Y}f;gc2+ zm0?p3U=>+?O=VvI1-po;+W2QW)|M-n3FZ*L>H$An_TI081}B}%YD4R)3P=dByQ%MA z61;L@nuPu{Ap$abwCYd~n3S}#fT>x}RcGx#w70k8laMgULR$==9s4{!SBFA1Zbu7^ z@^ktwBaAi7jEpDYBEkgt_>3YVufX|jB7h_bc)-QQEdZ(!x-fgM2hfyDfDuJ*2_f$` z`CxhZa~_PHoGQ|u33wbtGTx>A7qRC zGuoOcKzc@pHE^r}Ndj&Tz-`4)WBvFX7&t`Bt^k-6TOVM$Bz!U52t-`N`7fG$x~pR`y=L2wC5p)N2Ik|T>X>ruj<=`>aiyy0?nT$ciCJN?h(84Sfq3ajUV;Uk5XwE5T6Jg~S& z;bEH@&{;pP`Cp$CkVEjM;s1^q;6UGpKs^4#CnSjYEdDAwd$*@g{|<>m0AH1ql4{v{ z!BR^8-;o>)bn+HJ|L;gHGvQ)?uA-^wB|&5e+n?(O$BC0K|Cv~J=>WI`$;>DynEB6( z@Sq{9%E*M<@;o+P%akjav8F}-Glvrl`P*v-xHl^Q8FimT{T=3$ME2z`E$IWh6&q3M z?=1ioV4hK;|NWrse@qcsB0d%{K>l}P`DY*5H2;}cPW|H$*B8Hq4p-O8{?a)OEiEY` zKH2|qeE)v!lmGgfY}{BDX9X{-&gbhhKD1PNonJczU;0n`}+z%Snm0`>swJ; zVCVpL%Ra#Q=levh8cP4Y1VH#7SinX6yUfbJET`-*lZHg77 z`q0?ej;GY0Z6723PgG3*&i}!v4*T!pV*i`SJpn)?0^$Q^8`6K*F8X&Mhd#h9{&y5+ zGOO|DnJQ_2yozMdX_0$_%>K9$`hflh|2cHXeawG5nI{|A!S1dl0us_cJNPB?SEQQ~ zXkz_U-2X;oZThbnjM5`f^{UhGkHw1o_ZGt|58OaQJ`FCufuR@11}&Fj3#y-YzdJ3}zDy2ZKpK(7exg z#r|%4?fid&a!d*G9h4Yw6siB_k)!v22LD(aj(iQ)Gfd`+2!F1G?DT`n7R=1@;MPd+ zI?Vrc{=au=EG+)zGOEG>cSGn#)cjQri>Z~52%%(Z)?|8EU-HSdF~HGmwXNzTCiPX#&p|0gif|0ggZ z>=`5fj%u2yK#4%F$Lvl7{VmF_Yd}PjIy*aoqlVIp0lp6$(Vy!ge+s(m8tu;j7vxI| z)jwLvhUrh%Ht_+c1L|WjGgG7U#{bWCk-slHg83~-vFFd92d_(kH2k-O_#A{^000Wu z1a>oMne-iT&Jxc$em$Z3lk@?Rya30+TtnIZjR;UP{~u{@0+nOiw*6lzNut4&u|a5X zQ^t@~LP9DflxFjkA(AL6m8pSbmXroG7&A6WlqoWIr;Hg>h6dFCcf_;S`+nblz3cnd zXRT+r-F02(c^=2H@7um@+rFR2sO2ZayZi_(_`b_=NyQD=F@C$hb4>qPCG3%NS%)^c zSwtbeWe2v~FI6Dy2og#26-Xq_KPqYdTuci8cmL}D*fI4#_^ke)F5vHF2jIubPN<>E zo!D*IlH)6%z&>kD7&Q0x@s(@Ptyku?9j4S(5^K40*RBPWLDBu6p)JEnS~VyL#t@V^ zX~1`J=IHF4*t4>H~g<5?%fM z`vU}vS1(_#czP!m@Mal>7HH|pdC7iVj&7e5*sAE!quQ-%?*UFb!WECam6F&mydI%J zIXwF1K+0sBNs|=Zq(puCRr+V0%kn9&5mX_mjD17u9VoR)x+ z;Vx=*LXsL98U)i0YbMiDlGJH#*SM!~W7`mQl~q_@>-NU!Q-+vFA5NA8ynl#O06z0a ze9^jf>yWXv|9o1B4Cnm9o4pIIn#uL|k288nakUT7gr;<@UjD7prft{3pfW0rS zYNQl2<+hQScy}AR=<$SJ&Z!qakMOR%yW!8jcdxvA7}jz3ht-YzP^R7X@I}LoJAAJ* z_%3$#f(Rhs2b86l8=g@&JV$&o=p&KXg(&wLmuYok*~iBQ=pzx<&0o~8;nSy2C(sD? znMfotH_LMZS#81XcUzKaiYr311G_BtXqUnBA_z~c=wR1uNed}-dE)u|hbQ(a7r0tIChemz=z?%$(u znYyI@N3vgBxN&O`CJv+p?Y89S4$t6P@_Vc(IiHDt>B?UrjL&iMau?)X>bd#;76rO|Nm`_oeYUJ8=(%X@#W zi-grW!ruux)M%Mag5hh~fI$stVME9imN94!#{gr#A2SNR#bo^&D^S=6=QXc83Q8y{ zo_c2?>UUH;YVJI6XY|8C^Y3W|2L;VT6p?8w8B+fH_Z@13qd`GIy8da6Kc6@CS5rH* z!??W_PQ9^+zUUVts%GDrJ2KI>+i0PNCP2j8+CO|pUqf;K2lg$!G6Sj72A-Hw_$U;B zP^o-hM>~AOlJp+Bl(O^SlFQ$x3DqVwS9<~)#odVmF2~=yXS+?+V57cN?53^8wbvE`G^D2yJlVSs~_HW#~O$c zA;u6Q1Uc(HtMS#2DY}}PW=Pw+w1jH_S`_hjdcw0iRDV!?7cZ=Q7uWZoj~Nz-Hyc_6 zv{?!5ucx6=ar#jeq@6&yP%%ewCw>sn{#&C9Tq?dUfSfgw%*S*+sq54|4DNnCx31LRKgHZISF_K`!+ssrHhdMzp0{L4y zALDKXJEbMO4U{OwZx8u@p1Fj2Nys}`r~I#dN07Gyoy%IDR3?Ds6VT|x>k*)_0 z95{GsnUSE=ScWJqjDf;L1nD=`*Y^UI&ry$p?enW&1>9PgdsJ07(6+mE3wxrzX`SV_yn!vA=LH#cZE8Nr56NG1hEeCwoZ`)&p z9av!3w*obVVT+%}W00^TeoW)(i^5%yMRT2&3Rxy`irRxT7Z(=6H=*KW=Tl`bd5Ce2 zOU~!pFX??=e!=9%tqY!Cxx6In_m8Pd{0Uo6&#y=nHku)e9$WLRHjt`!){Y`)nM6;R zIB}|}=?3gXgZ&%*a3`I=_kGMJg<`@|vl2yAeR^)`q15wl_MS>T2k{)e9xiy#kI(2te1b)6wSQicb*_~xK&Rd6Kc+vQqlom{rm@LYg}@-`*V&q7WCpk1G=ODGtpCm3P<~vGtD4exK$!sR7gn$wE2Rrkpu~qc)4+afBhCMRJ#KE!ENN_PrK#G zHk-jlJI}L%Yx-jaTk*sSImHeI2JUn`s&w)2byl-J-$`n}<=;c+{4e!u9KNG{ZLQNo zv8|j2l8Qxi`gh4APT%^68lwwDv3_XXk3Epw$9qrQRmtD8Q&!DV!y!oBxe)qm zu5(TJ@Z9HR+a88qCc?Xjdk0;<-vnEb2_}L#=~nHujg6hzq{e@ZWhtNP>gup`!?CV; zdTMSsLdw&wO&&!Q9~*!J_2ue-=928r&q5)kFHYUL^T;*tb7?hdi}k%-qg9{ zwyFvMFs#gH4CovPf9~H^`-EF^ujEbL_bAVd=_MCeFC`T&1P?`N!FwXU;Lx&Sa|)K) z*{7nVsN_flsY`D;6R01(zU=#b#7o~PPB<)+9nYnHSh0W%1|fLn#UNekAvWmyC#T*{ zcvf3eb8mE0{S>PCN{G(;L9N@P4#n~X$Dl~wUg}xCNSNNPdcEuZAFv@YJR!)iK6_FY z>>IjR)79q^m}4Pa(%b|8{#?Em;`j_~;N^z*$A-9%`l9d`YUs_nHcYtPzo@Y>eptsqFGIZ@(9z%Do07RJ3_| zjV*D^bJUkb3R5m$1^!A5yKPErA?e>){5OAYxA{Nmwg`Cds=A4@X9l_%e!$91(mz5` z*=gpLD_6kiQl^roAq4XY_u34&Wc~UB=}5S26NJ!3ytctczTwD2ziD=zjRVV*h1Uj0 z8}9D&Rvrx$2{OcgYtCIf|ekk?*ddAnKUJM}$Ff zF509#L7A%mWO3R+$`{QHs(yZUph|Bl)4__gI z9KRgnD#>muq5_y1R7wgD`1%rO@T*sz!fWszRt&z@`@@NI3;4w#X~`1L#$WY9NEGFS zh=qp!g5bw1g_u9$cjM10;RzHr>A+TsD(xgC%Qv~r%h}kntFd1uN=0iKaWTOt;`bi8 z_@5wD&L@QO+1s!e8Fs;%;ErE4VSU59zMGD=;Nz3xhM5l-01h(~ULrK(qe!GqoU|hV z_VI=i>o&IzjdlU;Sd-&hOY`X_4{rr5_+e^-Uz<(`DrREz>a%N31P}<<{ySBZ@ zF|aSpPJ0DOi7P9FZ_oyZ@ZV2vgE8r9SbIvlSW#bWANiT(vvG6NsF0YnT|sDF_p7>q zM`PIh$(g4GktzNP*8dS;W#y+cj~1W_jadFlPW(nSG8mFX^3vy5f}{xXgx%)nlKmPZdk?=<}i=M;Klt^ z>}Zb|vA6jkm9&EuE&jW~-eK*rCeH1QiqcHHKY=Y1OpZJ4RbfV*>(pmQn29)hB|XWO z*e&l;ye5Lj-i7r&cvnb-)Ld+1yU33p7YVV4D)P?_uUb%&6v-vov9__X>VnV~zg~8E zZR=K&{gfr(7T^Kz;p7ut08sim6fkVsUfm^`64C}3Te*F?I8t5% z#16wH^*Yk zGCbTtG|e=B@Dz@EG&~+T>+I6!sUK1=TJg(vGiG#QQM-Kn_o9P92h{ae&5Km}oLG{I zNGjBvv?~oM)Ccr+u)VB2IMe?%8Xe5R8A$XIyHWU+jy*_u{CGM((P%G8xy;wMcN|#c z4oXTU%^z$u5uNzW?E}Yv70JLW%6v;JtB07QiCkL$iAN9ZM4UT#0^O*(Ng7=h$Bc6M7F_#@C#kb5W>S^02*EZ(F4LF$UjF^tCe^5Iz8 zm3zl$oI35EFV6MmJw<9`W9+2=*PGXDK- z>WS$YW}?z1HGjW1aX|8=OZ)l!Xxu?Gq$Hu(HE&$W+aiP`r~~o9iA@hOJjSnUc$X+6 z9s95zAxQX0=e;hBri6`(2dfE~^QLsGII~^`!k4$~g}EppdW>9U=jV3`CK@ER=GwD_ zgoOFj3^H=D;|$4{!oKxv$;HWNy&|JI`~UXFSpNOfvzP#J+{)c?=#QiBn8sFI|EqdD zM2+d6t@va@5g8=S_f_P0(LIB=bjufs)2f23Sv%utTm%~~Y=8zxrBwKU9l4mc12YS8 zdDa~%Jy!kBYN~A-yr#xe;1>bjMEy5^PZK~K2Xu(Qv$%04whIX?mz35hJ!vvMwTEe>74g>YqNq&F1+gl9yVjnEC+wS}Mv2<=&vn`B^yxG1x!>1qqAh?kbKskUFZFJW zv#+2swfaE_o!`332Mc;fWo6Up&5x)DqAKn{`*)7l+HdPJXdKu<{9x&xEAzhrBw;`j z(eaczh;v~V)7iz(M(C6ul+uNYj2lvVgH)1oLUBRCc)X<#!J2ZdGi5|~tI>Tbs3iYi zFV!H~9(Rd3mXvgtG>}Tu91Sta%U)iKiiiF@Bs6`wd$)}0U+qAZ(v&NCe6JF`K_N;W zZ`yi9OJdiY1sAhYnZ#+pjEXwhF8H>%eS*xdI5DJK+dKh(yH$Q#{%DQqr9 ztl7K=m1iC~-v=wkQu{6t$tT?{5ZAK+!hp;Ay1GpHBi{<@i-q?E=II7o0!c!U1Ooo; zUh+aj1mW8i-C@B0ZX3!^j(jj|o0{L34IKT6hS|M62P)*L%SvK$fnTIMAFHC<2S+(V zS!tdwDrZBDTpVe18xpw+o8s`%2a`sjQ+=!QZ*oKo6(s7$B3+sQDNYL1n&u7J^9{G= zdpvr*RS8Skvjmk$?j7}^^=@jR?pMm~oIOvsE`0{PvtPX8|PrkX210K-o$A`}=>d!q`7%s~?;+j1*WhCU!wAO>@V< zkD{HjLQ33*Aj5DA^>iyg8MbB1eW(FS5@AQ_GGb+=PTxFXvjn(~GZ}Ihe3d-KxZWId zmfN_=ipA8kG@V$oXD)5;KHN+_v!73v6ttyLiJ*JI6+8M149016Ybu&|9$Hw z8V^5_uGuT?+?rd^8%M8Q-7{utLzCh!Z$13Rg|=bl59=StoxVPF_mpjM19#8&yw?9o za8&QoRZl$bo}07#-edPop5bvBR_39ecg-f*#{F#gU0r`(ZHcYHi_f3G`x*IqeO__f zJN2vaqv3DYKYujCxW|woL+I5~>e{ty&7Hx62Y(^*)y&^-SqVHg^!=tCZ>tk%bAzC* zNHWW&QSZygCxc{zLPIC?QZ7y$#3Q5=u`mRM(t!UjJFaz0S=rntPr95vdsbmw@4=W6 zXdZJTI`dCMe7?9^XsNL82C14)>KYbm+{4k)F}QXn7Inp;TVE(n`;Ql3=um~NQBTgV z=zDwr@IV5$zH0Q&!-qA1=53PgHW!4e4N}+jWRW8*w5opnB+yDpfVOf93cuzR^)PUk z!3Hz+=={Vfhqm*)75DyFw`+{}LW|ZDv{d}4fs$sP(G@ofrue#{mF2iTJKQLhzkK;( z0;p7tuv}F0>IR=ZJ;S|a;9)a3gkWN~#Dv_KdrV7ImL0tJkM=jlTrj%fwE5Ne$WYx- z4rHeR&X-K61aKi-576F2{MOLXX^kf2uCF_M)TmLD_8Tg*&Bo4|(?{C2_112~+Hrz! zjVySc<*(MWXHR{7{eZ|wWvnwTNDXRDcl&qwv7%uNHch;;~ zl5F94b^7-lVDaSQ8XDZe3e!(|w&o;W4M@^=aBw*8lGPJu zkIt$~N-fqkd^07Q68_s_#?O23pyQi2Z&XM54)z?_1#`y2-Fx?H4jfUd6m(4j-+YvpxEu2}I^zVll+bWM8x6Q13J?uppDcQYS$U}PsL$;y>0 z%iq2Yfm;N+cJ9-skHTj8HD65~Fd6v2Jx#O0Sa)~uuBNN2t3+B_nyBYWco5eP01UzP z78DYacm2AYq;O{@?bSKYo^_L?dla;jWW%?=dO7;ElcxJU3-hI_qt_c5jT)slY2DI) zFSL}*L)8gRUg7Df)lgfNc5*QsqlA>MI&_h0zkdBPr$&}in5Hj!GO*wD^Z=KK_LJC1 zzf`Oo93H78US9FGo#c|Y-`$duAjt0UVS@&(O&d{?I_u)3qIJ)ghgCj*Icl5vw;4qK zbhF-Dqs0)3$mr-`?$JOs-els$HV7tszcdfCi&96BYwBv}z48*Mzg7}YPfu+lqeL#p zKE*CFJPRLT##jH!F?THWYCZl53Ee$dMcJk`{HS`gWyQ;vc}0rJ(*+{ns`WuKvSWf# zvfMBw=5Ob7dmKM;!hjRas=vgLHvR0PF8dE0=y>hUZUbptx<213m7xPPqAjH)va+&u zxbL{omV^dEKyBWl|cPuNeYY2RRKD!lzvT#iYUcNj^OQkiw@of-)(`U@cDJkiI#G6ZX zEio~6){M+9ER-kbk2|yAfj-by(zJH@DqC9>*zr(UF%Kw5RXSRLWU^uAnpG3Nef_$_ zf64s$Gu+QFwQ?+7&MwL<4l|B0m(x&{)$I7>aBmfJb91|-wO#e%9BK!rJgxYObvivg zJs><>(dCqBZ`8$k&(8jX^HE7zIVWJ}DTmhkbw_9Hc{@w<^|gcJG?_Qj&-s$7nH)!c zdroXrmXTfZM(hQPo?q$l_RgWXCZWwM5t)Mh=vra4Ud7wDtw{K?L6$f*K!PJ&5#$tP zl{pTYnzr7QN8^d826QmX1{N+Na?xEofDGS7K~uBOHgog%6m+Bzb^yJrUG6@7IL9RE zCi$jy-@bk8>gx?u&6}fd+0g$Ik2^jlD!46Lv{lXjSLEX8vS(Cd%YM}@>po&-Xilsx zIa@|0Oa^G|sV}b8W-JPM7+|m`MRM@2U7hf<26Eyn*cY?+jvhR?0|OIY+n(bedueNj zc1zy>@0E3qS46fMy>Ql#s^@86uKS0Xx9HKM$IAC5t%+*|lz<(tvE6RG{r&aM=+}oj zuMS(h=In#Q+ht`vAx?AY+{|uua_anoD#&#=_zndXo0dmzD=FDK6OHm1C!nOJ7LEk= zf+{SReX@n&0YsXnQx6xzZapBwh2W_xr=noudhPQmtqDA74 zSl2wV7qM}ivvbc$lP2lodJcBZqa*PpiQW{Nk2rj%?awesjhv@Xy8@+yw`^%6ZF{4- zZgRZu7`t|EcKVHk1=f;iQB7#+z`9@H8@IdE7pKnz_O<>ZL#-C{j zi6kM#nH+BQ9t=Z6N`#`YA71JIzowIE^UpOwG-SXG-8?X|^ZWOO_1)q!G7QFT?;ge} z((2oHjH6>W_`Pd9L2Em^c>PZtr*aJO3-)kE&44seVPQ18*S{68(`?FX_(>U-uv@oo z!SxQur%MeQG-%$!g-6g#EGACWyMJM4Nu%g^S(=9V)oazNP3D>#XwUL%L_mn;hx7*z zHmA5Wphd-K{jcddXQxsCl(XNv44Py2ew}5P=7MnxU(t;ltrdG3`J{PkCx41rxn1{Dsi}FDsZwO2M4eDyXmmL( zEe+)`*bs%mr@rR3<4dT@pfhLAhz^bGH*a=82JV1x*=clR-4VaNoXg@gm(lg<*gFkZ zf8Kxn&YjL&nF=B81-*(j)d-&Li7YCN0_X&_n0xEi}b7k;lhe{?{s<^`)L#M`;gW9 zU@ZS#wrqQ7s8Who-AAqw<8`zcp|N)a=Bn0`nxTZ%-on-lU8S*f{G&9N&MIN%=HlpJ z8QrgH?B^3UyOpf0JTau2hOf;ma0cR&O@d{|$ela24$YzIz#UIYO$7%!lsH%zGS${L z2%0@})u+AM+S*Exj_!D%6H*;!JbjLEHx?VwRS@@BTHwt_Ie*%+WXTfEL4&5gdi5%l zI(ZAj5wvfeooH#PLL`3yOZPgbuGfmyt2=-G{8`PYiTXMC!i5IMf&%fJNB-uMf+<<+ zV1KUC&NdcOY#z!otCa6p@b1O-w`ppu><4-r;{Z`hqrdm>edhPc{YNZEuJ(KXwZBd9 z@9j4@_+{}K^g?4mo?vKbDCgnfQ4Ex(6{pV{UN5yARdJk?$MMyZ z=`+-%$gYqnBcj-TnC5h^t|4YCC4CqTZ`wBnqzxX>27g0GT$%D8qW139Rm)-p2l_9w zITK$EuJ6FpCR&b9e*ax}zTfx66DR&zw0LnoE8XGf2RhcweyT!?X8KgSCr>zX;>3yE zxqyuJoaxzCU2z=foIZW}D#b&G^$I$ZXFPR5mnVCiVA(RgR;<`j60qGx0%URym%4k<#+njsrD#E`BvT3)CNdGIUsDOX~(sP&hPixr?H{>V&=(R z{bty{@mM-xaaO;#NhkM@Bw$Bxk4aRqfAit~F}oZ}B`-pId}5*pO%Z_H;9oj>QE{Xs zyZ7w5@irN-Nge-%MxxG+ZwNql)7{1-9XmEgGqM~3oHQSqI~bhN7~4SAP}r1q;>0$x znBG>kAqzSnb8IH=mSaRpKXqyhskY<8{M=l#^)nt~e)2+dwp=s(0Jsn?S#j>%xe3Qz zh`vEe*NckslBXt?S5_wJug4c{xay-SofttdITaLu_!I_M{&Nm3MLrK$SGA}pKO;Te z1jI!@?pChqh(nrlCj4*m*XV@bP^210M&045xQvk8z_88Fc%o#q$X&ZOF;l9iYxLH0 z=g#F;XHZ?=y?0M{)l&yv`4ASCoA4rE=aY}K(+u*f-ipf;7yO((YJBvn&+2gl{pNbg zh3X1-fF`&_5_|aY1}@BlO5t&qf7Y*8Z6plns98fp|6vi{Tb4(|eP!Rdqez?>$7rD- zC9%Exu8oTWzx4a(A7+Pa2Bf%y-Q-=gB&i;T{UH z(+xJ)Opf^Q1!u@%9Au1_83HvPgwJ8;{3~>I1XqBFbx+SGyue&!t?-q2En8;Fa|IL9 z6faFHd1A@yU1xqnC$^vf$!F(#f$`710THI!E{y?`yHZ!|9<_F8)^5EntV?BOr8-%h zSf{t_(3&$-E*tg;UAm-Fx&XW(Ue&YzHV|;LKGB!;J?< zt|k_rnDlj4rk4}~n+X{l!B(6QKlIO7 z5Z=i4=<8hxzfrMd+qG-ATi>k(I?PtQgf9;HH`?s>2T<{|*D!;S8`~z^rL26`M_*rw z869;@E%Ax4*8~OS1+tUvpK1@G(GMApQ>dN9?WLpoOtlH_)VMP$@ zUGb?F8Tn6G+_dhFjrq3$U*u=S6|SA)fstO-z&$Aa^yvP)hWn6jd( zY!pFSLqS2o9CQ>E9v;pSYHuc2O-)-=HR=>m!c0!|Y`M*wr@eLCwtN~T%_&7?B%(D- zEJEV|WY95g7k8~pJFaAACsx^oH z&Zm*B@bvoLXR@$>$V+ky3oYd|f({-$Xw=T1c@2&~oYbQ zH;p26E_-*cx0DI&{?U^8Y0j5*KYscY3`ODP<)s8+-AS}Sy?XiF+sOZG-EZF+M6LET zO{%o%+`of_?{MBzdtmjM-%+=1s#bh1ryT3OLoR1nwMw!)xD2fjR5wudwf4Y)Dm;v| zhyer7Wn^ril1D8%uaR6Ts^r|<7Sw6G2hNt4t{Je#$44STtZ7Uu!caA2d(Tn2{@&we zFoHq?zxDX?+F`@w?p(BMU0q|R8E5H^jnHt#8wF~BJXh=U0|yVjN*gX^R`i=$Q8MvI zkBX-K*_Nt5zr72jkAz3}g3%z;v(}HI8oi^gBI+$o``$Zl=rfwe$H!-<&w%#pG9S6b zHa0xxiRjKYVv8$qCs;4im-)@1XfTb|wZ98dPar-r>8nM8E!A4yq0^$>4}k{7OyY+)vG{41jod51^`_PxZ4-Kx(&5KzZoZka@3n^Zu7zg zw6s}Fo-9a(z{BR?AFjE@>eZ{GXN~7aDQw(WH~Fe}IHN=nl;8Ca5tL`*X9iej7*Q^b zzpid>6lh2O)Fnwb?}u#Kq^Yl;Zu_y8X$#ZSU8TCU?zpz64{S)N@u;%<7UuD}g290P znY3@{wjAxb6kl_dHXlw%XbG7}H=1nwK9kDBJ748_v~Zu&OL?8${~vgVr_j{Wl0nMZ z01V!?t*xY-N)*B=V8aHfty{N>GUK}ENtGhT^|{6tsgq$KLKsY;kG1docfI6Kl5A8) z*Ew@!sfh(EM2?%?)gfy2ty*8lbt??DwdL^G1_TGUgmkRAeKNr|`B!ozoSk*@;vsM> zw40<4d)MCA!SOes3+Cw6<#nTff7_93a6a?Lv17+zQtMhcq&nr${d_nrEu4m6z3y9F zW-Wmya@pE*RM!g^E)a;!Jw4-d2QNL?s;qRi^QUJVKVW=NaML1{fu$#{}nFQ69=$snJGZ^^2NR`U?n%=Qo};#{)Uo5^YPcgj>Ju0hEi zwd{F_&j=>eW-fm%ulTU)#=rm0f~<^L({S(U`+Ws3{(|Kz-ra{0@`bbP`mI|XIr5za zz5{J&5;C`9Yk-Tp{NNzqv;U#F)TVKk(Yl&CI`0k?tzYq+gr`C_h(qre0GdQJRk;6t zA@Nt8SsESR@B8t2Z)e5T2;M-qGn?|uj~|<^Trn1He_!-|==~+J;AIK@cj=T9Bo+_2 zYE~y5-_w1q^ zPSW$W&wXS39jC+a%l+BceWPuuBrZMLvBKrk zvpI9-)ZD=#8cs8B@bbcwOQT;sf4D<1;Won~EwtqG{=>PM$Z0g`X=|HAd z1}cPwyFzsI?l#0+J zCe_Y~nKq?4h#m?f+%z`+TgtMp4KE-8_b5Ugcp&YTIGdfM{b z9mqNl%%P#-;csuxw6a`y?0-jJb@Pg@_JHt=Os#-h-n-epK1c$UvPKkPIMK4i=WrFy9yJOQP z({k^;-*8!6$+F%$^RG~u6h4~|YU%Ja^}vAx+?2z-BFKIvO6Hmh0Lf;miu!bLzva@A zux#)-*8^7#A0?M~dT8UT8|{m+mK~-{+`oVS)u`SRWh8Fy?lliH9^JlewFslu;dN?8 zKIxCoHoVWVqC#rVWA6;%;`?F$w>N9bZ>@X#;L4}}4eRNhU6TLFarPP|tNGtw1$u>c zn9%4S*jKY7u^kptieM^xq&pU$IJg$;Yk6-mJT5~hcY@0}(x^M-n*qKOtr|UYnU-^t?(dDJccS3~(8!uDb{`G4P=w zc1_>Odz)cSsQDq~G&fDnlycfhHvne7{@!J$LE!2PyCA2i7;^61FzL9sH+K%*QCG5e z{WW24Xi|$UTejq(YeKbaL|Ujq?l9X<-QVyAaj=V0@701G^zq5g&Xy4L1yDpzk%;<{ z635EQN^oC9{8xEtjq5IVXLVJ(cFl$OW(WHG__)W<&(cz!vgq)UBhqX@Fnd5wU!hf) zt7)pMOSW&{?)RvN{X7yMjMr7DyQ{9+1{yNlS)i_cN;&D?a7~RCOS1(qDJ3DjU~UV+ zF{9e0i^h;49pQUw?zk|vs`7rKBJ4oK{{36&MRv+-z{>R_9^GbdJFv`xTv7!tP=?>;jxd<}3QMFdgj5}v5RTHqrK4pNc; zj6{`1lK=QPLt1D+FYo-(X>J}Gt;S=5gU_b86%~z>nG*zGw_f-XuNJSXKj$G<$HKL29~#JQ-4u${GXh2eSl5N z0FjWAyTfeO&n38zx3N(cVdEDymPA4qcd%NgW+hblatKN51v_o`ptu{+&69qGC5PGP;XRY>A0&7urt*f18el z>E_-cTcm6TQiBKniSX@`?d1RY=O1JwDL(5OIpg`o{isM9;8JYq0{f!g98OLaoFuA> z8;^1NsX1+lzo^57ZB4#)$w-W}2nG@5m6Yt<;3I|_;DOJ9(kmQ%84OtZ@4urR*Fn;3 zX5Xw&?h}0^F);)z;*K}r;|yCfHZl~#xFt*aqm;NVSg;xMq8kZE(pam$pUVFQWev1< zjoM=-oV+^ZICExUk&T1HcwDM(bLY0AHl+-amXwr~q$6aNUS8XofD6?oM?Dfiz!>A= za;V$J$`v1*%;a+Pm275DgGs@TDg-S2pzQ@`B5>{OSuR)n!l1X~xPZqv5{LCn-hb(m z5hbu3J`+xwO+xs11S3GLo2zT~F^ippBjIBM5)=Efw%aHG?cRaEO?9JRKnI$0LyUpk zhD4}q^w@L;(~!DAbbqO>eY>ewbUX)=WOSS!lZu093wfx6yu7{hvEgh$l|1DpG)_&; z*>^!rct~V%`CR2kD$2_PNV+i*niF)g-Emwc*s{L_SzGX26z9j3SmPI-w^%3uWjQ1(m8%@4E1bHrhjeea$MY)3Eb zAOYO-^|jr?nl(Io*EHWAcMgqKU(r|% z9`ZKN5p+bJ!UZ7W1tyIxY(ogc%K?)lX!o5^k35L%gsuwTK5a@V?Zp? zhzvgzBac>Ov*C^FPeWi6JQ!U>p9`b^p#fF-{r zNqzbizu{=26Ax4&w$$D6ZwzGSV=NO!6|{;MqSGpp6Zel?-OfJ6@51vd!Ae4D=A%RI zCr-(`eY+jOMaZAS2B;=OG-00;AxgeSQXQ)x^&k}S&1ZT{;jo$ghJn1^R*8K zidHn%F)q3#s+PM~=uRd(_7ow25jF}vMs&aiYrcH>K-jxI`YO%gS=S#H(hSSB@FR5| z;2g`ce5t81qx=mV^R0^ztl5~G5)yg~JSf;=o{par&X!HtgNomCp#HB6EXA5Ff*SM{+YDFvF^bl*X{4hm!Nv_<_)vlP z=e2UBr)y{-O=w*SPMavO;-E|fK}VKrHV}j~@6^cUVy6oK5Dz~Gd0Q|O_w`1ECVgB| zb}5XOP{B=M@5uqp88CDl+IEnkxp`H#*fBfJ*@|M29YnAaQmL3MWkB;6W0ds`&70th zV#;5?ZmFlIhgPXb1%4G~zWl?7BKBN!ZJd7(RgTcAELQF0>>@#01O*2h=$osRKls@J zs%9G;tRRPKJZ+{<-65sfe8YAImwm?;0M9C3y$T|BAK?crEG=2D!rlFTR2ECa&tJcB zBL}O)vWnc6K5N!gyP>)YUzy!_C~>7uoi=eYd-d(xiX)tl(Jo@gj=XZE%cgyHXp9)q zl~oQRxzQAsL2_HO^oY5pTf`qDMslCEYu9S^>EljBt*d`~$PMM24rG|sfrfVPF8frs zAS`2+?Cmsbmhen)7>ag`{d?Iu#4$GnRzX$b4}tmH#Ok=Sx61?5lLzYd>t{ZFx+;x+ zQfxw)6%_%a*!?*I+=8-1*sxeuq?JuakM`-_y?Z$oFwfAyFg^;oITT=&Q(D@cyjl4uO%0`p znaP{jID<^g&0m{q`b=(5Fyg|l@#MVT-tGah)q=Ui8x9`qDLtm6Ghsv=NH}8?xeY?L zDcs4MXY^gY{(OJ&PjO_iQ@4O7z3w@1(m|sxtOj(eY~YxVw}lRbKq6{>h(+PX5w;4o zF@JwKD|*L{K=711qiBVVg0_M-ii(P|n{4aMStHX8UBSpj85fCVH#*8FGriW9XWEy^n@ zHgLNlPyiJL49>u9d&#dpN-A!O*`Hkum59dK3JGOd&8rFjZ5J26jZa7j)|q;=oQQ|l zVE}VGw?V_YVUsRDRh)DQw9~wii{o0dk!|QCV$Z)I^a!vlZQhI_Lw9aN$iR}YjZ4TY zE>^}^lAe)~!-}hRZ3N5U_*X+u!+;KvXL~ zJ?+SBBH^jyGhDGk6ZOVHlp5go{`UD_2)|Mj&Is<2!v8$d%}2>eVmA^AB6sZQ<$n)q zQ#WwT>|F;AZ2P;FnN1@socujbd}|6W*-*;vD7mt1GjsE$N@nULT#jl1rJ6q0C*gy+ zcI}!%yN-HjuUvKkjEqNh`607V6_ z@ZWKUYIjY|j(H*kC)te{F+xB)5w1~vUFjqd;Rgxn_M??{1IZ>K)F#5mES@j(nH>_#tKWZJtVnZK9;5$6S`Utoqm5k0@>+&|ICe6!#@ znb^qgFmrKH0~_Z1H~n;Ry09`V$40|U&V2m%yoV1v{f)=4VP1G#;4(}!BlRI5L_`iP zJHh=?Et=9}NJGCUScUBv@5)>+U46hky^&}DN0_FJqF|0e^3pl-hcGBAUyh+rP&Y78 zhPukd#8eEfC)`)?)D^5++9Ej9Y9Ok8U zG)X{Gs$uk<-G<9FS9*I-JWvaZBtl)_^lMs|Y3!f9cc`9T8w4X$UDyP*6Nw9M|@IWQ;B92p` z63`aVntk;bFBFuy{JqM;UL!|#o4Bi=_+o@(0|sv^bQ$>S#OmKrLv7&>#*t@4v;l@} z&C$C?bTMGO3;6XVEK2^5PE_Thl0gt*{Ps`*Hes(JFZM}c{Isn$1zLQY(4}ivGca)P z-Ytc>j~FJ5^TH6Bw!UC1Oc_=ysb6U!_i%Rs`xVN%iEKldx$%;uGBCIr=(bVlg@fmB zq;18Wl)$@RHl(EuXiqtUZzt^?+?wwDjX*Z(@qadUlKTa}`hj#tZ6i-t zKo>3DmWH_;6&p9A%R9BlG<<9n+{Ue`l%gZp4a>Nu$4{QP;fScC-2=MzarWPBn!HIM zcMw&L^R;2^3lKjlC{RUK&7F>#(e~rhGi|upIUbstap4<)`^<$hJ2 zQ4s(Q)|+=PIKF#viZrIuew>7YKbQM{ygM|s@`xKErLs;-4H;TkwlLUIOz-J!<#=X+ z{prQeI)OqqZr^T|5PAo>k@3-W11CEknfBg8twm6#`=!gS9HX-5r z!#pQv_!x@8?ECk>9*8-WvXKbnPLFI=_W_X>7;U7u_cdFCl%_M-4_35WCuQZ|3k4xv zMu+NL{1|i8D|f7I{52dtO*~%m9zA<)$@#fdeYCPvPm8ML>PR7nEjvDF_-8P{h)5jM zHzdvK2?vo-Z%%OnCnXQ7S8~F!GZ=Op8`GMk2ncV5(P_~nyU#2_ec2R&(d=f7T2mu~ z!lEFf(~LrvZ@do0$Gef4%1cw~m&ZWAU_1VB=4op#XySj&k*Fm_Ahp+K`3%?pGK6ZbrtPR4-8do~Z04|e1hb)b6`kfH zJ9Zo}r8isT3r5?+P?c5P4`Em*IOS3?!bA(>IP)+3{8p_RO0@}7&YGu+lK=L>~D^uyr3leiSVDKPO5b6-mB4Tn_ChVn@9Tzl>!}OU)Qz zIjmYVFyQJHrl|^=S!(WJOWP{o4`yIV!1MJ#Ctq<+A-0s=Jhxh%xJ-y*-5^MMK0v^L)`#pWJYX_i) zx<)7gZs%?01ezA7V2&HMKwQ#W?JB{$rL-ZAZ2` z)=bJ8v&JVF9*W_LRovLTEe+P?z1t+Al>?tQsT0%nWJ!LQxrA388nNeTI@Ulw|;?)55M_*rAdOmFh zWGmrYD2(8jI36RN7X6m>?A5DRFr||REn>UY>>*`|{X*NTaPWH2nwyC-*{z4N@;W8w zgO=vzhyF!eoY>t3Q;|f->6o&=+^(iagv{Z;@RGS^eXMWvv?Vik-Dm6>0%BW%RYcX2wngT5hi>L~PS(T~Ky}%^Tx2HH56#Q4B*`w1@>M6U2qNrAD7V zvS?g1V3b`Nj%+0gQCzp>1U@R1JQ8QeYiY>KIFWsj|HbLS04oU~tbns9c>`fubhMm$ z>zpVZ*700-Z*OnIkt2IykF2eFF6Px)&iYJ|Ex0DQGEBrGaw3z|RKw@hQL%_-6XawX z0W91aF`@Hj0V%$WtYkti6uGN1a6*vMMmP1i7e@byiR%U@Tuxj@2v;@o(HGZ5l_L?& zRiY}#Od|jgRwokEMr2V4K(U|b)3}gAwuL2=`c-8+jgpBt$@u+_043obu(3xP0RksK)<-nGE0{_m5iJiKt_S=C(?q5&y8YNGw^+E#f?Of_mVWrUndh5Uw`CF1(7EZ zN=ihXIcHu}A#QV#AeGy<4a2<{b#P?Njs_2sul3-2G0|bwvwJTE` z(r&v(7ZdO*K7QQFfyF>|!6`qx$4H5xSF_clkV{mDhu zm9JvNpQZD%QN%tiEp_a~Cb3;xxf^Qjip( zxJJ=Js%u_P#4s$&BNxvNl}CshvL9S{y`m{x0=AwY_;mk!SJy&&J-*J4J=SOqCxL;;`#V20Ehc5~#V3;Vx6P}CE}xVfe&r2XrdQ@pq=2EVLF z`kzwPev;@cVyD9`i*M#x3-ec*#|sQ2@fGb`D=HRXyAQ`}+=Vmo>$vxMpK47`3q2xX z6s*f$?zDk(#xS}WxLnRt6=^DE+KJ8B(&MNE>lo5l4EaRd9Q5}#ckX~srtYOA-Uf<) zfgg*OuyNE+@JmviJ9l=TS=&W0Q0xR8a{c0MlWj}pvowMh1Sib+JY}i9Jqy31Zv>ly z-X0+9L8A=}Ya0L!nq%_kL^NE2NflKgYyhu6k>?l2kRQH~xkW!PHWAOIFXn!u+7@L# zvV}lV!YM!4dmrZkT{IBfEJ)tc=}q@O)V40TdbJ$amVE6PLG}VJ6*@Gd-ME?gv?N&uCsynM+k?Fb^7nVIDPXLFv7s`j5VSM`>X zFLd)}Gn6vgAMpmYK(6z{)m-`XjNbEoNmnreY!_W`JXG#-+WQM-gg?68O;FD>7z>ba zA!wTYEC>t010+ih07dj^3wcm{7d|XOq63NytpDu&vQ_mpvqiNHK171qgnHlbR(pVxgwSbThHt|A27cCi!Tuwj=rkQI4gx5@(LC&>u| zmY{$^^i+ArB0expuKfM`%?SKV=(_0h2 z&u_d$F-ZccSoxp+Jl2 zu5sja4zBA9RpH1A$~YvJAyounw=o&k1uQ7mzLgb13G78Ttyd1FUr z{>KZj1TbL2A*iUT3P%WC@=<=*H^!$buKn>b2Rc^Ea{PY#)wjc4{>&{JvLA=QsTw7ZE^UCM*RclkvKd=3{5&IR@H4r0! zueFVk)7Uv!#q9c9Z5^E)ERe!=)7{ul75Xpmz=0mT5mG{ZCm+#5*jcfFz%hKuYWh9p zb9>JXCIR3NUe4E={+Gjw0o}1a;K49Q{%qINC=?iC@xhdw)d^4S$^m*BK~dw(Fr={63IdPNW#iSMZjb@*4u-vU zrG%6}^BIC9far)krHGQ%pnqNGn(FOCqr-s!y^!4Cn9K+iqEZI0ih;3h zvPE4+ilOON2!RmjLN=m%ObjcZHNAE7>U7Z45Us>myEoxh6by@ySz%4I4Q23{=Tp8! zl9||P!KrKBLLx(;i~Nj0aab{=#rf4$Jy{XCNQ)q3mssI4hLPr>Rra(nlk2@LNU7fY zbzw&lgxQ}$bO54;P#qkD!bGNxUeM4)@#WTXh_yRU97uM58m zND!4O>v5MiVuE#nbf%wMg=hv@-?NajiO@3X*C`Jp2b&@Ytx4nsFs{A5y}Xi6UQtmS z5&XeR8cK57>Jscw`p`Rn-F|e`wQMa<0)($hxTx=p8ku>qIf0y{(;;E*l@9q?jOYwHf( zJrqdmLa0KSVu}!VB?S)uQ>1L!XfAg+K2j-nGM$-UzJAR^@r^iepe>~ob~zzxbm(rI zN)-*sA_w*ew9twR@H3;N!h2yrTMp%7a0|0|Ud*(t;oE%L#nstc5R;UeV$G?MAxpI_ zf|M+~w$^A%R#X(Rfo~Dbf^=Aw6Vt}yqtZ5vH-p+19T~Kqi_c1#IDG>xN{^pC6W%EV z+`|D8Q$9~2?~BJpsVy9T)J}52W;_?0fInyC{d1vIa7IK@;5v9!uyDVjROlGS+tT39 z3!%G<{!CJAEaA4pPD}dpP+}KllNv>ukeAbW^oRf5Or#e3msUfuAcp`t#Hu*pQU~?s9USqL<}zuX87)GGkqXIWAz0i|7cFx%9;jfhgA{TD zBZ)xJGQKM~){Q=!zb*HvvnQk^erqfMXozD&Dn|a?0OX)^eu8wga`Ra)DMdaM;;aya z;fjTQjF8fnge>1K`RqN@S;8}egLJCN0;;)Is`{=HG0}qKX3DGLH=3pN1~#&VAJh9K zge6gcz|G_$FbQWM8(BnRiw9T`%(PV8ki~tzzG;g+E1j3yTsUdE;N$NaWgcrFlN4Jf zZ2H6YT8N<&V5LDVgG#2e*Mwt>s-hfDTu8W#qz*(-DOOZzK8PBJrrFsAfx%y*7U5az zDNZ>9h3}5q^6J!R2jSJC^Z*nm?Q;4@SOqDzgrQvE)DB8DGnnKhGOGvaS(M$t@K&4; z(RnEp$CjbZTlZC#=}?+%L^;ED5J-{an2>52KaEdoMT7yI2QcZUW&AE-_$RL)mI}5w zabej@+4Vm^4dY;xgAc^O7V&uToV?dCX^v83dD*Pouwlb^eQ2|?f@>rBwr27W_(HwX z(o&4ezNM4@4JwUNz_yCyb1UPb^j6d7wLr>(d( z$|13WQ&MzWhLog0_$l->Qe}i?C^k~6*p>;~dyHP+o!pSa`ia+6%F89MAhL@S%DPdn z$sV>2r6M@Y@^$Fmy!o%k!L5k0hVGo*qy3Gce@%PEMUBW&6&44pL&n?4NMoi<3EyZt zMfese9V)0?)6bqg8W7erIx#BT@nBh>RrGH z3yW+{la8B~_Z(8RP&uh8wB3%+#m=@HVOIF7nEcC?cNPKyS0yx|?!%Wi=R>|(c+5VQ zUG7GDOi)+Wl&-Ywr6K>GS$6@HkIbtM6psmm-4XX&@m9RbP6i4q2xSo$%0#L8qSu*D zxT~-R!cjuAiM6%G<%twgv_ZgR3fC!plhWi8@v`K<%UrRM^qNhx@BHpEG9t#2N_CWZmQAtg{U|fh=o8H%(6`)=Ms8%Zt*?A z2ae@nF81u=v1rkx%dTJ#^9;tCdXQ(PpI_b^&8mWKN}z_kLh=duNw5Pi4U>t zI{PlM_}ycNcJH^03vD4PUEzrYWq6QdVg2HQB1_ufEXBS}p$9m#&AqNHW=P>f#iGEq z>HS_ybfW&;BHFRoc;c&t95wfLciLNpPf`%hLxu#OKR;Z6i|bFnZ)4A4nbR0PyvtSt z-|N@&@aMQ^>|SL-g0wLrL5WC8|A1(FWBUnjto5{MN6RC8Gnf(p8&(c5TG`aSKu~3j zPskRu3yB4Vvjr=A4L%$PE+$DFxS#{HbJ;K{Rd$mR0!|1(;gv zMQx|g6-1XDVW8W3d&e~)mlDXwqC1o@MHD?i>af?bJA>pjgH}xVSoS)7cJJS>K|tv3 zS9$nw*r+s`X8T5Vmd)&u2x_!ywN_X_!0kc=BTTayA^`u+Yey<5Rk@goZTUOabns-; zjTC9G6YUA0pY|O;uCr^@o*-lh@c!k_NE2Jb>h&!Odl=buX%_gf4g-6?ribG-UxY4T z_Wi|J7njC*Q7dZ<>MesW=?MT3OeifxK*((N>9}LJxS8Ae>q$<@YuX2YTWU6ZYyVZ$ z-D)b7u9tQoYO7tVhG2KX0H8&IE?^nh<_mib75wnQa01#iT($FShr#Tr7AgRbFqm1+ z^X^=7cK&KGI~k;;zgbX9X-t@|!(3FR3#r5WNE9v}87&TsR_Ah^Trt+BPOTcJ{eLy1 zPSjH897dVb7zwy4bUP#wOR??L(kj$tQWi@2h6(HM0JuQPAxVOhlO0C&m2@=cRY4my zo#GZSiR5P@U6M*vYGP1PR5XVz?&Em3%;Ao6Q`!E7)uvMum+BwK@K>mGLNb66`4fp$ z()LJ|1C0Lo)B=6IdUU3ra>#iiw1^Kpv7V^%Yidxk+9V<;DYJj=9n>y*OoqS)ErAY9 zsEUR4hp2LA#ZkdmX>6mr=l14>Av9O3CC^wjTSvy4nD)41EQuUbOa=^0k}X=0NJLE- z5z&CxZlG(romVKMV}I5PfG59PAM8b#ddAU{QGs&!oH6w5l8fn8qNAhTu}}i47hkA1 zd+O0({MBVm3%+Dxwk-l~AGSdof-E><2RoUYw?>B@fb5E4lX%_~p7Bi1d;o!7TpSqI z0FN8$nr7qJ1Ogko_TbM+pLQlD27%41X+_ncD!Ra&x7rmYB_$IL7SWfeI_gZ@HK_g) zujhI_5RPAJs!&RuOdeS+;PrNe(j62N(-?z_xj^+&6^yhEUi{^CW69CfeuAnZXVB7W z8oPCCeK0-H{2Je?dNiju4(DkE<~(zVT$x92YB6%81~TL*q7_iBCqA4D3OkB#n-Ij| zIdz2$s&+Q~+2`+q-O|b^KdUN8sbe|W7V>XiUY;a(P8ioYcv+iGd|x^g&Bl!f)k$iB z=ro6dShwLS8Mx9`DKZFf2==X&^bUS$=W17n8Ki)3{#f=>A`4=8ffwCz&&O8~5P4jq z7Q0E-!pB60=?+g`wDr~sySUk?MCzktduSj5pf$pYW@0c1XvEMU*7)%eKATKns~bVWPEix+FR(MqTYNVpACDIf)Wg z@%xR>V`$96{Zl}rnohT~yKpfdU3`?peouMy@cCsAnu>mhNwJ}hMBF(Opipu6#e|OP zGQ6RU<3GsrgE-w0zqfAQte!AZYF2w4FLIMMqc%X>Lq@~)LE99{&@xDNF^{cY4@NG- z_|ZV))=hMzQl>gMI2@l}+E7wEuZVg8d662aUDZ=PysJpbsTcRn@n<}J9OidSQDnE2 z@y?f*NukpM%+gFy6(Rp40jg(d@%k2_A!^;aAjk@^AnZ2Iq3RTn`U3ITJ9=PKZfpCW zteQhQh{8xk*?PJ3{DSa9kX24vPU(MuoxU;(L>8P$?!59KC;Qn)xi6eb!u^l+pXDuZ z3qLY?>OT9yh9IL3KnTM9Ku`=EH@5hhg=@1q#XA8G-O+`L-Vr|Kz&iSAu5d^$k~Zme zWy-f36B{%@cy~m`x^EA0=&4+*R>q@8TN~Q+(bZCmii{ljVsG|yPw4Q=0c4>BCG6e% z`}&F4uFF9xfyC`j?e@1d*7jsr6>XB+6tM{xu$Z%29kh$vGjV1n7ri z8^hW9z}1SF(2v$(!LS%BTCp4+ep;9jv2+gCW78AxM8-eyv(L7#myJ&*iKwuIdPW94 zVAkHcT218*3M~WaPEeZ$6Q4#$i+#jOYdxcSADVLUKeDvlx%V){igL)QSYp2~K>>!7 zlv3cpfq~IhOU+u-E7p8?bubrr^AMef4^z~2Lo+w@PL8PA<^evP9fs*(dS|GcoY|uH90j8{qlzIn$V(tS`%!eN#i|3ITW~Xg z<_&dxk_kd4J$u?vH!3Hoh%B6G6IV&0phk8sjxY-EDm^0=OKh1dv0KZw&#iOImWinz zW0C0Yg*kzd%bOtjmw^TZ`)HGODlW9VNNyv_?k}EbXIDqZ^Dg=pcoPQGOhq=!+)zd^ z%2wBaM;N~AnwxJ6au_CEq7ci7*5rv|Mzz`SFjA7dJ}o*Op>lju_#~Fo;6_!0YR$T$ zTkgC>+Az-9$$gs6KEaVH|B@{LWJJVso>y+5n`|)%4sB7<$p?1`&>LrQHK*AQNk11`lgV@x7qNsSBCWuSZHIWMgDvfup$nZ#OS91~|H)3MA!y~za}vtoWNUVQ+z=%*Y9J}=<@$nziqJDR-a1Y}YXVm22-@hv!MdU`qx zjzp!b=Xa&F#&Coo0CbmFfM45REHucWCH_ENBMzTQfrhrhOCVj~6=e2$BU`d-a8RTe z;zOnmysYcwqE_moM4E6B94O4yt}sM?}Yp*Q8652fzqF)jxq-01T~7yb|9B@%B!Vj+kDjwYm18`4Epk0Hk6cU9dOR! zDT!v+!^0!_{NnYmm;CtJi4&FLdg0Z_?-7jp?e+~9IF>4c^Ohd7xV5?eX0yZfo)agI zgD&5i;;bPG3;;H2Z3CSJDT5eNVb`@$S{eZ~W&BLe1+QldmQ53p?;1mg~V z*r3dj8bUgx7Xp2-t|+<{^|xz~%Ff+D!)#jv2s>KZ+WyX`oHPqwrG?x~BxpVbh8#qt zh2k%H*+d#?p~CQ!`d(g|`t+#>Wp{9X2_17wt;jJMI#z%rTjoy`(x6$8YzP`3 zG2xtlJq|B?bs-*VX($VGP=>6~qXp*)xT!>8h$EO&FL!0J2qm%?)A#9M2bi_Te8Grz z$+3v*+ZY?G^ODfKqbpKYP|r&U6S76S@FTj=Sz&XnVBV&j6#HS(>At5P&mz4^FNIjr zpx}!!l@KrBJd-3t9kpa)htR%3D|jEzx$Z#&b+->R*g(7*$Q_?_YNs6IPFt-BJsCRZ zsd=vxNy!f_EEB{qYdQF-a%s1&+57!}`HHlMho2O1X(e4HAgO(&m0DVBCX|Jy>edH{ zoEQF#^0mUpfM+kK#VPz1u4b>R!P#Ce2l*=d(`?`GBS|i*C~FC4qKQanu_tPzyi;5F z1W>>rq$jvv(qLQ+X{Yd3wr_M)R3Oth{(80LH8vuv1<+kh53Od?sZrQPT>Y}ZISh2v zR_2%JGlhs~ZJr83@94*gmZB6&y_xSj!D6wA;@laG+~&= zVW9hEVB3Zk@R205s4Ig@s8EX_d5Z{gP_;`!`gd#esF8?Rf-w-XT&p&m)Oti0Aq z-=EJwUMdLzL_!*1wNdr9z%-*hoFC&L{`t!2^v@G+40XQfV&x>7ZB8ej9*&Lh-^G!L zSBvIOw`b4Tlc`1~v==aV44(U~0U36zi{izog>5oZPMnyL-JUjAxwyrK{lggHjTaSqi2Cyy^6 z5Olhb1<~Q)=4$wFGvXx2)q?p=K|y5DsA2S~fuoJ3>{7N`&X};Sl!F9aPMHDe6bsc? zkI$JaTLpex)E_^sdK60APA>>@-Zt9U21cmhpS;XQwQK!_C?qpEKZIg+Wtfg6#@)Ns zxvJyN`L`r9Ywd4_1~aSbcZGSgr{l7{r%iLm3`SxCr!V^KuL$55olIU2gtj477s<=Xq&9m#YoM7W1FB_D&AoIfgASt9-=@Zs zs(&3)B15Ke6-YSJUOQ{R}eA4B1aQ5kx2_(e%`!!@iVZ4yOH_qBf7yM%@1m?&n6K+ zqqmfoXw*bg^JCS&?Nh22cAzYg&K~4G?)RFTc_bb&J`vpi!%LqFSFZ}0s{6pfoy3|N z4ANWC!f`pnUy{ol=xlsPx-w!_Z(JFA-$(@(ApH2WCg~{@%u6voI(R$w4J6rQV%Dk2*Ik?fBj;*7B`pEMmp-I90s(aKPBf@u zjiENQ(`E8519BPYr%haF_fFc^-_V&%UEf?T(OhK>Y#~BN<=|*g)s&RcwqN9)VGfq6 zk~tSXGEw-7-+*r28sTY7KffG&Pn6~$X{B#QK&=8cA9G}SD7keKx)u>qibE4YyIQ*U zagk27KDe2nd%vJX)n{gBT8sJB5-+ zQMgi(benWzzzv!7I26$rSuH^prA^_-f(eI#-~+8cp{~U;A*lR)iqXdRD{lBt?=wzc zqqbOe^BY3%Hh9&(%_ldSW37b`u`q`5QQOPwg~}{d*OS|CrUKWw!^8VlcIy51v^2YZ z8#jL{FSlkPCfvK443E?2`dfUWr+!(vK ztfa)X>~Pi3&kY3cKyZdgT395kuxp7oTOgISD0d{tV}&6$JPKx)OHyXxua?OePoZGs zst}u!ArtqNE;KT?85sFlYF&Zfr>?3Y|wc z(s(#GysE~xeK|QluoeDu){sE&9@U(?=9Kbc)W2uPrTl4AR$lZl9&^~XtU|dmZIwor zAuXuTSwu8g+9k@`ANxw-?od@Gx!;T=bpL75ynF}jG#>cSlr0w2xAj&!1^*i2=5`{_ zZ}GT)pI_31OceXWml?G}f$h4NO1`0i0pRhv@-HOC5ogb(nh$sB`M7AzaKERYzhk`J zf;p_j|Hw-Aw1#sP&tJW|CMZF%T)k-xic~CQolK_FZHkW>iTl~)A3Kc||NiOI3@$Wz zP&BmJ)vH%!78gJLUu)}H4FAo(kAaK_zfJ^3I1#EcdXsO4%wz1!FQ|js@M|(5;e93N zc;mE)iD_-phCu5dX&8)-q#gY3zcckp+6dq$=HjePmASv=>$;xR!*32x0a&rx${?Wm z49?IhdIU9_9wIO7+jrxQnomZ$Dar(p#K*kcznkOtKBaU{n>!wHFv66&NI&Q1&BG6r zKFNI-eV(vO8G0=0-wOAK4|oz&b|w+}MYs&TSZQEoU)l-m0jYtNC<%U|I#dWhnEJ$$ z+X?z92~n2#fjtK0JhR)^)_2h&+bYP>6>23viVtraGaQy{?_>4owF(%FT{Jk8SvxI| z18&p0^=vUqg81ljpfjg8Jm=W~Ze7uSHF9Ifm(m+6fPrG@hcQ+dI)3~Xgz-T)-Yu;x zH>{Zf;l*h4YzSO43zO{%OQ^o4@b~PdAK6X+G?U5x?&HTtSNehp96EMvDlq3{PUB>x zE5^Ng#nlP5R2f()Fy2@~Yt0O3>A9ewIjH8__)Vz%$Lq7-vR2^-Ms!~BMwCu6itjg~ zakai$!6Yu#J<T4x0dZ+EHGiuJRSF5ftf%yfT9MO5j>CKK z@`;{gRJXu{rg{$CiPG(Dlb2Ha{MUa)`h5JK$xhUpFUh?5tU8=%imw_3@S&L_2TJ3H z^g=p~%$l`H=9*qUEr}54L5>7(=I&3MYLo-n#sTyi zCW3>BZHkO=V2?AxAtJU(-itx43QdpczdoraeU1#lCyTji219l1bn2?vD$978a`y7l zSvK-4zC3hz99%cLEJuhQzl@Lz*o`T&%&YllmjfP2|k|NNlYu%Tnww1{nz7N z?4i&wsgPG;-V@h!{H<%()_UW-LD>0OGq7d42}?`S_blKu7DTfT0Dt#q#Fus$ROjhep|fyN}(2)S&1 zOfTaGaO*aE_TF*XLom$hG~x8<+2#%U+q5jQt0xv8gpB#-wN#^Td$4IQ?()}s%6J+T z0g|JmkKgz%F%tGC9lSxek=dL@MDSs}#F`430}&s9QI>u+g=w0=fCaSwPU*>8cYLPj zGNBbJ0$2cm?C^fyRe9oTXbwE+eN3I4x6TnhzSuBvEgk<^)c}9`XTn|v01(2PlHp*S ztdYnBQ)(IwdtXwr0tX~U={B9875^dDK0zMhbHe}TfEbNJcThYr&Y~rqXEbT|+vJfO zP5kY-0&v@85Q1f}j9@`l3-4^}zqkfKv}g=bfo7rGlG7z)M&STMQ3o_(KRGowS?`5t0^f)z({XsVr?P;cRgg>JL5G`g{Od_U3ZG0hD6 z7)XuGHl#@z0ZN;_WnudKfd;K2R)C%&ad)Wv2?(@p>0{tUS&h`)yHI*J`Eld`LW5%a zn3DL464?f%Hss~fOXttml-d-E6t#Zx_%|K4hP&XAze*NznYLW#wC`v}LUoZ#@TGM_gmXV~Y3W`*@K{ez(@wW-uP2 z^V;q6V@OFaw+K8Ft8IWdI?iwDMe{;KN4U-XGtfza<|B@r0!g?kGf$DdeU zTvoQ0VY;5Narna63fMWc#M+h#kwF$__wgzbG)zvA$?p;9mv}IJ+@@Q(x{5O+1d1Ky z|L|5QDYH84I7h9u=sL~2Lgosjf7Z^dV-m<*D+*$h9U>L+?fwBkgi*+c%> zSx_9PQK%uC4j?wm;;_xLOMX;z_kSJtpyJF#*D^op8BhA$;sA51RE5za^lh)yA3oz7 zt+EE1kg1_^@Y0^F!x7mj@E?g!OGEL$#%yyB`U&Zd={|*vxGlo1wj4I>-TE8k`r3*D zYRl5cyvOl;+#N4((eCGuiA&$w?aGoZVI|5`|Ij!XjgOvkrA^F=Ygr+Yz7>^UW{8iX z5K};Xy;2`KyYBTT^Qt3b7Nwu}j_>AlYgDk`SCB#TpRR1qq@Wg z@0v$!nIrp+oa|K0diW&zzp!s0UK1q55@wZc_1o{Q7Pz_Ol~i77btU;`In2 zHZh8p=Xm&rLTJPcJxS4%{l|;65Hdy4&K6=hDh%GM*%fE^G4#K7bObmmK*~j$ypPnr z!hCo!d%K)APP-0N6ZWZ*6Yh1oP+Y4mYjpb~czNB4kw&VF{CU&b?ue}k@qv8A(Fa$0s_Cr<+yYX(Qo!unG zU80WBmY$@b_)VL-p?{x()P{Lj2E}snKG%}|PJO#j@5u@$4q{)G0PpG3M-{EDC{YdA zV&-=;w+YR9cb5MQlVUcz!G`u-LyKBdcbHkl+k2m{|Fmxq zLQU#L=$pb2*h?%5D40D_ZAyk)z;ns-b@jUUX=8WkYQVQ+2H;P+u&rY|tL5sGY6K2U z@I?4~NlaNWThBjn^o-w+qj?{DQVG&H+ipWDdps-oBU@i(UE8kfALF`a{UmJBAGvVI% zuo;}T93txvj(=lc^ZN``ZWI)_%TZZ67R^NRwqvgaIflH|V$0~)sAp<9jT!~_a6nRW zROHFw%~*M}0i0QCSbouyo3xvMnMtB6^oCV+k4EDzo$x)%tqn(yE{tz^*vPdRFxh1> zw_yN!0fxy%^ch#_k7WzmiO=`WEvp(lag4aPP%+OpBOh1)l|0e6U~hToqESlhF1iwX zEcw9k;~T!by|lZ}jN(Dh{j@3#GQpMdSg z@H8}MB8ZB1vu0zSJ$p~OiAVE4WWbAmu%JG$A3P2W^E1Ov2)&{g76j53!sS zliHHU2sjJJD3U$lhqzq_pk5TLN~uqS)YZl1R^zYk@Hjm9-$`3mIuC)*v;lr%*4`>AyFSZ~+=2+;2X(TrgnZk0!U4Av zJ}(B3Kc2qi=NU#zTp~|!>%F)4Rl4-aIqml&7FaI=!{4}J8%zQlYiTVl|4nvoc6C#j z@KlktWn+!BH}b~@T*V-+xN~t{%xqqAb(5U7H#jz(VqhNgXdcc}J@LR#O-sAXit0ST z4>u+W58F0=vGm;76Fw>EW0X%a;oaAzy?@T{kmm5OruT7!UY_`xu?m*stQziIom2BuNO z`QPr!7;Uc{IzGn=`k#Ti8d8tNoZV+sqC=vqrJ^DaUzP~KOf>hc+F^5dckbyE%*E>? z-r!Ge&+_ke`Rdgdll`(CxifaCUFnPmv?{OHMd*APgk5D!A7p= zG%LhP`n=Gic}cKOVP|e#cKa$N68IknEAi+ZO%Q*iU`HNA&3JJS zpb*cm`V1t7A3M}HMUmTY>+R>?X5fGYmMh*dC|uJVH>dZFuA)fZ4>=t0_$eSl>oZkO zUb8137^+Z+5SF6X^{#{SMUSrFP#^GmD42VyzQLIImawe2w>0uHiy5CjbHfX&tI~7f zUEw$vQ^$L~bhve}2Bu`5YO=4CO#$NzZqe}CB_6j;grj%b$iVZ|DXX>(Zymq3VK@7&{z8~L?z?SqRHSsCcs3jr3gotv zHaU+OpJgDV18D-lS`c&YgR7T872SIVNQ|&bU~b@@x{{_ac5&5?+y|FD;sYG%frX^( z>w7ZG@BI_sv^D81j=?iqO__3YNb~el#)CQ@x`9MS^sr~`|0&pFnrv3){d0ea%n!^K zZ+rHm*Fsm`D0E&oQrBqOo_J(3Z|)uHP%{Ig$}aD6Cc3!=7GD1W$>d7Q%nei&Q)6TEE?}u|< z$ma^<%f9#Ps;Q9x-fcK_>Qq*X84M|M6{te5UAA7bYmC~H^P0(<*cp`c>^;$819TB- z)tp>ir}BVZ*18NT(J|YWuP~wF$ky>>Fyv+9)X8tz;urJe^?O#;`)~sp@llwUp_Riw zBhyYzPQD;pgLB^XO`hhp5Gr#n;D%wZH&%A~X>rL>_1za7o9SlT3^*(wkD=c8j&6*t zYfIE7><+cE3a;0(Z#3(hzb7?XH0XTUon+^_o{i%+exI|I4B<&oXx;9Oi+4ZQJrmDu z?crS*^5Xe(g9`_41FVs_Zr#ghydWVpMNzw#xUVi?(0`+y<#Z$_8cr@QUbMEGXL)+% zysL<)y49z(bMk4Qo;}9j{_%LpqpD0ly5SzP>&8LF*-ue?fHLv&MSn|3S#1^=F<=sx z5;!8cm%lR1Y6J33Lm@CFF;f~VQJDY}=$QNe9Q@v}b7vvSNQK*f={F6+zO}pilND!r z%d%VgHSwUQXptcloBa--+6y&%?}RgISbj5&$Ln7~-kipg89G2=D+8_DJewo$C>F&2 zoDco#NrxnaP_6ne3IKWyb(;#+1yGXvym|e*UAc2lm4B-${=E8{YU2~atg9^TAQDOV zYC<`Hj6Z#r8~unl5io~?OELX{c4x+3(A#Cx4@2MiDGsqQ3nPr)jWXJGz4TfCB#xT~+22#!punE4*0;+dG z*P=H~{O3xemMyQ6eop!Q=vi`q%z8(~f_mM5E?d*IdGkZ4a5`Q%85p!sd%S|@>5QF4lO?Aoy-?Nb!5iwDnb_WRs&8UP_ALw-9k z@y;J6hL5kt=KMahUFVzav>ldv&)Lh3b0Sg|MoDYn;q{$S*OkurL{s%@{=}Ah@b+ZV z!~lHb=UID(p9m;yRPp1>b2DS*kxlq?DL03Dr57&TI|JF9aDK6+KfR=4c;|{Or%(51 zF3rIx41^zs$0A;LPjHj-Ik)$J@WQ7vn>T-beEfQ!o-tjaE&XwRRU13@zEOt*3$Djj z+Bc)jT*L7e8C;ufpP=Z7gR0mdG5hWP_z~|J8CoFdt`K(N{NOOv5{|D|YFgN&id~M= zQ%zmGPZ>+RWq>{T=uJB>`#a!7cJocV2d*A9cCR!1+ey%NqHL2j?DV(gmz4XRuQ&I> zUhh7ea^c|VWGp+<9@8BYM${@ZhWLpa6_v}ZD@LFfGGLDL^ONV<6~ZymR?3TGk#A6nJ&PQc76&qz+1AK&#AQt*d{X?HSXPe z18?Q+@$r3wyi5Ber+o7?@P_q%MJba;r*el)&z<`) zdO>9m%}>ij)=2wZkh7zhnYfYy{Ysx3sYIp(;y0TX&r_Xv8Eu7Inn?pYt$c9P$kVE*Rl-(+ZDAVk3e&$Jw7{teAB02<(HDaC{eJp z3PHy>aPZ(2W^a>+%Y5tM!nC`}3=&|bbp-NpYAfnNAGpMCG3vbfYTN(8UWoqufat0NopZUFgEk-#+g@#;Hv7NR#1M@@Kd zo&SBrKZSvNHgDPT!uS4P2p0m7&ySi1n9DPkX&0V6{4Y(NyJ32!mEc3uU4TSIfCm#r zOp4kULFid3v}9e4OV;l?e5&d+{-hQ(@C=B=&prHfJRv}3!wTJwmCv2~dlQRh^w@JH zJEh3yQwDqm#%>oF_rCD?#aQrKse{v-F{KT3TbniW2$|IRNXpR#_%h(z2!uqP&YfO3BknZ6>0^U9#lL#mdcQe$9X^gOiey9{kgfO63m=LVMrDbIXB8 zSf*g)wg3%qR{TrxSM)xZ{rvJ{Av zUs~#p|FGl^6Jg`euFV+92oz)uB1E32 zfDAEbN8MP=P)fE~DFVo`&o=#YHW0O`A_LMHE4Eu7c!=s%+1c?Qm7L%o7ZSj%H91*(OC)>FPMCTcO?zx2V1m#k>jZkCzFBb%g` z4gVjMtfy+FRn3>QCY2*7IEIoyen72l-w0}sniX3zCXbR6Xs`)8hIW3B?05pJq9Iz9aTq~*apWlOOXK% zN&V7u7aMwbIL+6Wx80nycdwX)T)t|MPQ+3hKRv0xb8PDDraC&?fx)l^iMssNiB$7_ zCa$8HJa_?^)l|Gqh_$kkf+sJ|x=ynisHa=ayZ2>q+*Wp`c+X& zkpQgV@-i9N(z8YJX^JMiQpZl2aaDvY@NI7PI8xuh$8F>5X_&RKG{Rv0c<068U2Qf+ zI=gaa@Ev&Z^vVkn^+GU;pAZ4aXTM_gz7bTMV%x$wN*icetc4~(CNT_vUX=R=jH7l>efur zIwqy~^Y=OP=U*UXC$CCQj7~{gD=I&6v4E*cNhnI53-vRe$u~zap%p$o_u4h_2$H^4 zG`w2y0O%=YQ`7-WaUf@g9eQ{8=uvoJ;x;oaNi%*wXurs}SziOhy)Nx&6+(pGfH7r{ z&J1b3uKNavgIUn6cX*qo|A}p!a7wppCe3P1Acwr2=3_5pyIk`D& zOxtLOK|0cNlDQ3IXSjH|vIJ(3!s z;A2{`Vg0*)d=!2i(?6@`VVA;zh0kYa+q|6K^CfnAP&ekA>wABDKE$pLv?SAiC+hP| zBB$R+_{u?f0yv$iyZIJXsQBNV`}wKv@kJe==mvp3a&V`4YR1dd1P2OW?O`M0BXY_0s z)rXHF7H8zR$wuDYyLGeTVR_eFr_w>AHpa1Yu(y(H_sJVhi%{m6B@gCf-eHa}^ClkS z=IM7pORl36L*0MfM$c4G6{pmp;@2S;;PHfP9n@zQx`SF!KY z;)iC`V&Dh3fF(cOB^WR_-}|=F@UDOA-8|~uYGNK#CCIfGSa8@(H1`$;P`2?V3wZ5660M)2b7)3bI|UFeSdu`C{NpL=FBr$`5R zy#?8No1ssAU=qY%;y^Np^5c-m4y71XUDIJqOk~z3Vs);Y@5J9IE+Y}v(|i``SkIOb zA!F;!d+sg5@~&Brm^q^e5$s~=(rCPM^|yW{T9~klw0zs$HR5}rT9XMTXMIGJ_>yl5GM!%ADS}z$&%% zUv-iA!@@^MfAm#9TZhFRvMR%%W5*kTp_dvnumS{oiY9sUbXNdiK^QQPD6$PX1h)WZ zzYp-QhaYna?b*0Za$=X0RS{?UMeH)Hs#5$u`A+TnR40V2xsCBTLXD=NO zlZAFR9%o}`2J4JqSzx+z+9wyYH-NdKcr2Nctd<6;j~*|R@g2FZbGLVD zb?O9CZ#X-Dd(-)HXNaV@$Lg|(n~u<9T3fyE`VCj<=&Z^OL{*9GPfV$`gN>3WonJl) zt_^fp1P_(H{u#mF#nPlO*>UioPum-;cnjf2fNEK%TIrwKfvLKm1x=9y)LJ)t zeAUXRE@xn z$}3A_rrq7&=HL34`vZz{m5agZ)Wx`XHRa`a*+9TOc2iF;0MZg;T&jtspN|5t%)9Bl zt~tqXFomp_ua?Vl8$G?mE@HAJXb8Xivd75K5}ZFcU7j$w9v^Or6YX(!xmf96j`?@I zb5pUH*9zyM00j##n-6%Jt*bI*zf0-RYt~?@Lb$YS4RVzpoZ)G;FB1B|E@&0*?i=jykk=lX(+*j#^^277;P^j>8kY7j5qaCb8`jC~xAJ7ja zZr}c7*D`;g6$b2NsPkJad~y)0Qo?A|3X~7IGf{*WOohCB6Q?A05sxi`)u3t9Ub$Ai zh4v0HjJ2E_`UO2-i|Y|2*VW9dOytM9%%?`Tf}@8Ne6+e_Z(6Tcg(+8hl_oZ8*f1+_ zhwW?#j){npY3ioPH%os-^CP6hoBJkiyQmx5omNb?_c1W7n!YW5>(;e^N}v60){P~D zu$^k%%?e)Tk}txNg&IUrGDL8Bd_wJ{mM9E zaDd07M2Sgrn^%BYuCwMaI2%0usclxC)w9qLvspUUgF0>RuoNqhp#-!^>r_kq_kVn~ zPb|a@2+2mY)2xx9?z3ifnipJL{m3+<#?`G;$AX^xI_@hRChKVcKb>V*C_jgvG$G+S zuLnZMMcos3VEn=6x^nZDjeG$;y>(+HF+dC7QM6snio_rlMUO8ka*s4MFYkdQW{E`+{Oy82xBr$*59wA zEozj52ZJDXg;_LSi^iRzW^!Vf(ch1}g=4&Vz>?VUPH9<0v4%n~`tOhOl|(8)0voNK zz8{YWnqU^Ae;Rf_bH;ahSZ)91NT3B(!BS2l2PMwm=s<0AzSj)ZeR51SqaHZ0?2ozJ z=-TN8vcUy30&2S7jfEfV|2(*saQ3tVUv(^wsea6up38BSfBro8|2x0%fAuf>pHKKd z|MGwJqwd^aE7^egUVRG;g5S`)Z(mCnmoLFyz$U^v{o`}bUl&ym{R%|gL0g$Z zh`kQ%v1_tfr~32hy+IKUvuSnzI9$$tA1plb7Nq&V51!`KyVzBgkxSwK%AiRR!O0 zz#SE+<;YACzWPcYcR&eV%xo#iIk3dYkRC0SF=b?^t{iNRO{K<;d;k5r{L=r&)BatY zr2(qkp^O@{xI`XTL%$(()#5T=K9!b15x}L@%O|d%dtf#Xk0aofs^>lw=Zt})`c*$I zon~$|DsQ7|3BpB8ks-2&r%!7rc1}3c7jBgU1SIK?8T%Qtm4Sb(^skqsq@>99P>I!4 z2`WqzP}kYV0dKXW`U`>3EZ}{kM*8D>@)=1KllU-F2I0vP_RAROOj+9`9x=AIE6cwF zn`Gh%;d}8D|GoA2$AsbQyIi|SgoHLFuIK+^^GIN=*Elxd`5N8Y!eC-0`3k_OCjgPv z|MO;={u%odDEGx^isk~p)gb1FU}p6pT(VWz0&XcsnKg0~4s2_TIWLNH4+?a_2q1i{ zL7j!lNrTy=WsH$a^1hZ}dve0?ukkA@KEHxhf7x)fWMc$~?Njrr?+wss9M_kSZrhm< zb~zd(Nc%*@^$QoC2X~w&C@Cn}hrjGIhI5qRwo&_EvPXbqEav^B4SCKC!QEbeMIMxa zdlW-NEYyMs{KyQ3{PYJ8r6ba2EN+bf8og4@Ke4hg=QRExs2szU^h@(dGJ{%~i+cf6 zG^gi_8OZZaL>~?F!w62~1GG;vD`$IF3g&+vu zSy{S!9iCm;OgWBnMjNt{sHQ@CKhf-t_Qx|&>;S0zgK6;OIpJSop^>}~c}%;?-PEpn z5!(hVSlVGLVM zMZqK^MvnudPmY5vPcvi5cth|usLy)uBfwZc4s&bH>Kn$TN!Vb7+){ymuiv4(tiXj!)DAa^O zlP9+Y@00y0KpH|A7wIEQ8%)4?z?#n3ZW1pxVv7{qh;URefL23P3RJSk_TPJAW5LLb zdAqD%#^t&`H|QpBk5bi|3Q0Vp;Aa)X27~^70k(`xVp@(c-9^c6ETNRhAUBtP^CK7h ziOYZf_kaJ9|NsB*7cM7Mzl99T>d?p!XdHv)ho!a1C@=pyD%(!`^oj2mBLSJZ=TQZX zhq&>=M=|)g1RI|^s2FH|qQB2$IeGwPoL;|vKQ`SV64qe8ONt0xu|gF>68`r2!NKy^ z*t6gNm+DRhMT$YJAG}LDY^iY!%8n7>@RjN^$vO z1R~xTJb5_pP%o5b&3b2gOw>W*zavhfM8x>CVICfO%%o%~5o!x|LOesFvjX6VJPAVH z(fZi9|85t%+WM0q^^lW-27-ro`uatv$&AT?fy5Vs?w`_5zkU0c6OUcQOHG)$M69lm zwBmQ&q9Ycw1isc&toUi(yAl*anS{s=PgD^*DHs|U$xk!VB!*6YNKg=Aof!3ohBj`l zGx7AIK*kT6u$qlb?E#F9E_lp6aX1H+J)YnaVBsYe;7$^s9>)mraF~%oT$FKULm?x(Z0}b^X3I+!`p8f6f?l6 zoHn|af)Nf6Bje7UV-N1fb2<2eNpP~D^N5D{!R`J;0v;c9X$p^8^x@2^_3K4m9RGst zI#LBB?wc-7Dex2Pw>JBEd5IKtOBSKA6TUa_JJ3i0h`)5X#@b0>&j9x&f%g393kA02Upl!RtR?dxI9PR>G>IE= zwhS_&ym)q|)Pa>jHu3*-1nwG(EPgkc@fj>ihH?BRPd;|z>B~-UYV?W2Ck{|jIMD6! zqY@Z_3#FnYL<)IHBz*w`Be?BZXm6R9b-BI-@KcH{9LAp})qH|qGQCQ1*fBpstL%J* z0-T~BH_BRqJa7eBQIo?!OcaxOF;C@+0(AH3z}7T51`gjpXaX3IKuFw#tFh;z9;h0re614L;;h0#y5C3HJ-aZw3!=I9@_>NV>gz{Ld% zW?qB>H#1lkCQ)ddKMi8cy`; zC+4G2$oP5OWfj($IPU!QEx%8jq{Kx2-axK{{XR<=oN=oC{(ha(ahQEja8iTk@N(Q< z?_Gn7w>ZF3WbKD#*tUIp@gb~f-n1ef#B}UX2iMfIxCYK#Fo5#>3?X+YfCGu>r7Li>(v5Uc~-w_1?CIX zloEWzJ1xaNM%F{HaxD{qP0|6$ZqnGuTf`nB6eBSJ;{=jq$^m7V&GdQjS&GFiR*jA|yYWnL?^Edo4(Fs$GX6ELuemGhxX&S;-aDQ8H zmU6&&u_#S6-6LMiPJKFIfwdBgG(|f?DBzk6~xj5f>lCdqGRe8WM|dR zclbK6)}&*_0?~z2pNQo@{mtir-z~*f?)6PWo=GtjWl@349$8)*NmQ)H0G~qt9E{|D zq_&f525hp5`)T3ibZF?CkLBeTm?`toCrqj_N>pzU6v(j%ki>yYHLuCnz0G&wS}LAo z$;oZI&%CQa6gu5t-Jjrf_UPu#E#Uj;L64)1;V9U|-)^L>EdZ++j=?jZ7n**ZI$P#T z6fk0t%zU8#oU@7C!P2FX@P7(R`@=?IX-xhPmfOe+EFD63O+Rc!8b#HLoo1Nno)V^1 zLZ+cc$7a4v&25(`ewqKbZ{MB-82x5Rj~Dm;*VS9TTo5#>+Bt0fNLtylpVxm}fF%89 z-KS;z&BP9ig~g1exa0(aXRLQiXd^b%;^OYfbUE(Cj9vYOi73lq0Gu%#4^u7Z6^jWg zr3fawAIz#dkL5N-|1evWQU(=90NIVdDoEG8V7mohO4h75erl9|>f|hp8W2o832dtm z34tEBCb5M1qYi*Ii(rB=!F(SqxsL2zXtb~66nsrGAtJGSId!CdSm!Z^Yhyh2&DC{U z=@s0-gT+&}W=)yBOXC1!5JWnoy;wAn-B41u``IskxanVfX{Zl9fS}<}p0>R8;o+I> zupEUW3F)VSanr9XUZE}3!-a$NsZmRb`@*Bk#v?^G4Wi&tGir-7 zc-J6Bu|R71BDY$U5P(B$lhK}G`#pb zNbMsAK0H@9{CV`&*_|%5^&&kfVND!851HvvoSYd5<&^(HX0S*vt7#>00m6*--=Xc76;=ixk&WwD{grbGuRbRez z`mAUTce9t|bN;Hijz6l!eAFT$h{x?hkij)vp9ZlryuD>soL9VM@>mY4WKE8p@G$u>vX2+JRG)?& z|K!KF@d)>sjfjO0JoS@9-*Ay+VJw+Sniq=ggZsB3)>9`!vH>B9sZP>9F_rjJH8;^7 zszvzQPwzCv#IpYmT;U{mK z83i*}F~<}K7#68;Z7%)|yM7o4Hib^QzW(T>-Mh!7exVX-Mexc3H=^~*%!(b!Ktq%= z-lOyL^Q)fpprsVv1~^B4kR~&*zs0p|(1A5A_$ygNwgAXXY7k$D0BY2l22SXk!QkjMWEU>07Ec90sVxc&F zGS;*$nZC3HoaNQ+J73kZR)?oYL9i>w)<{uZi zU5NR2XnL{05YiQVT})w~DXY5>*GYnWjkx2$!EOfNg*s<)f5H;X?m zoigwzj;sAg*tP%i?tT+`WaC=W(fQd?-Es&)LsV!RLZB>i4rDnWH~oX`B!IG^=9DzY@+p2fdLEWVk8A(&hqqEyLFn3-6kMaVHy+uz(>56+bSaDqo zNjWbx)z`0Ew|&Qsip+z^i$uN78w`k#cZjlM? z*#ArZ2zz@=ior$ZMXuVdTQ@*RM`YiVSE0Ca5(*^x zt65tr%o~nuZvP!g{WsyCMxB9qYQ}8G2NjKPo7bGo#2mVm^j28Qv>;e5#|LBRvByBb zJdiBW@h2sn4?b2yc0VG|uI1`_=buli{qz!7uWj_wPzPp*lm+}~fe9FI%6=YBwt(th z^~2=~(fJE*OlJ|Q9!{qSE@3X)epPIg593ZQ^*3C_v=8^w@fg6;LYEsP%`HqChL=H- ztm)edy~w07Cyt(D)1Ocq^UbUBGDZi=7FKEuS>6OaezXS5HnTgfQA?$aUG(9Jl42l( zSqLQ-Bnc^-v8{;qj=mrzFOxD%UMYFi`W;zLy~V}CuF)}}Y(~<$u`Dl^z$LOOGXALJ z??wzCo(-~(q3H_nG6um-PN+I++e{kI+2=&Bkhde?&@5%dOLc+q-8qh88CBO(&XX6Z zwjOgDt;J;z&-{a|={zEK`!mAB^4ntkm7JcKM z;p$RXyH-`p?WIiB3Ked9#`IWu@u{QgB@&(<7%ah0yqN4Cu0?CF48~aEZrFG{KPnUOPhLLWjR?>S|?*$!y3tJ)?DpSvixdpt|d~aHYg&F{6a-A$mW&!9qWxS~lJ> zRkxF4(r1Zpa&b^$uX zK$ghqUYr#whlEaJb$HfBMys3x+sCeK8v^P1iOUcRfF4X8>`kCCM2Z~_*47mdR0g>s z(`ObYmxcrGTz^rDgM}<*<2tqer929vZf>p`@4o8or5%hjWOpf6se3-u^kZJa;8TN{ z-st`AN)1eno^pL8JIR_o-v1%plsWGo4WJ>;BpJb;kY&@<3g(r+QW6t`h=fnc89SYJ zTpN6+7t4Ibfu1VP)OcTUWpv!YInf>5+ z{@xM}za((!3;{%po{tNEU!^BzqpXh@NXl1j<|meBQlBBpT@<=29Hy(7A&Bw0fq}ud zS2Mt$9k>Pf3M3JV2E~db3TdGDc>v^G2{MZ0#7aCk4y#ctF8Ex(7;>d6h|Ffk;~d&H zOhAQ#mSNPY8lF5-_H76ARD=bk)>=mdM3mc^P|gFR%+Su(6P*Ag_-h`~Q8>Or1FFny zedf2Jc{MFpyo_a|=j3~&KN;PIx9GF(qO%EQj|~F@iM-muD_>1~8e^j@;4K_2v=#$l z1xk5F55#8%AuYdGfpm5|l^+!d;7KirCD|K`?my!lVN|&~OLdyjBUqH;lTMgiq2DLg zg1V7}ItPy4NSnmj1}pG{uwRqm8w57U>1?rj6#T99~wFTUe zu9ung2i+YFzw=FHKp=aAg)CmzQH{9?_0IJ8$5m7c3|iNOI=j;+2}41)b2Ae@P#qi} zPvB$Al>mI^Bwl*alQD=4a(IoJ410Ko%LsIfA>6bPX z;3<-gj2vpeuMPS*F9ff&;=YMxLdD~Y&i+-Y7;z-g^qnpmLE8SdASE?bFj8@{68bj% zlk@RRZ9pICT!jeu=rRNei-Vk&BW{*xu+P+fV$zJ?!*i#Q^{An zP#UBa%5Bn^d{`N4%Lo9R#<(_B?z1>n_0lk?b6A0;w!;!>?7QUIvuE@XD_B~}Y!4t! zTkXiX9ngY_S5NuIGS?fSFghfoI{*j?GB9x5B7LT?-Wq!LxZ`sIU7MEH+&JhX^6Oh;Pu%r10EP zsy6P*B>GZgn?7MQqKssC%1w1j*OyF$gGS>vT3s*E@kva!qb~?N^AcergTNa;u&xl= z932*foNx-31n~dH{+p=LBTz{`A*{U|_m6XD02OrxsMV2WNoB*9%(LsO^;AbB zcbyiiR@w);HXBkZS{~{9YM-X1hvXgenTmNquxT9Xe6;s8#C%GH)|FNP5Iian z#7~?>f_~Pemy?9Y_C#4%tsP?ahQKe82+F@~-levA)$Q(pBQiT)L7ov$Y2)lF%&G;h z;=%8mbN?%5Jc2|B1KHiU4b%b(6awYCiv~&{;yAoE~pzfy-7j@3Q+}sRP66W458{;XwV0$LQ`ko!Ftt{&2D4{=|C|x*{_q*wzjwe zs*@2w1V6S&aqP+pE25Z?IUq+=7nUC%v%OIrp1^g6=i1K(2*L|JmNexw>8Lk0WY~CQ ziu;FeKQXSQ8x)lWBasaQmMn~#7%qcxf>Ht_y=ga6Wh|L;MTC4jOHVL%I{9sHzs3Q7 z@SDW3i~1e>!O*22xM|HO+gh;V;67FVaSAQ5+aNwCfliv3n&Oi@G-`qNov#&l_+l<} zE|=cg3JWNErKY|KJ6uT0ABUu93H;Z*`H!pnOmjc=sa#8^3`189AuVEb`)#l{OxQ=& z{rT+sN8csAk=F}AuNXFLm@LDjn=_7^_4BqYkf4zMbk;*JF<u@3ve52$?VUyCUPFN_qcYfwX-m+tW5>$pPMVZ}muq|V7QIKZokC;w z?kqwCDki;W0i(z;zYbBp5e2X@y{f%9)gm}?U|-^$g`A26 z8jviSIGIM*rT%M-jHctEobf(B2e*?u#R6)gK|AM>BX#973iy+Mz1n(}vDC)>I2sl6 zGP3yowHUA$Q;u#Mmrqw;3*B7lGh9Xzcu!e?U!imbvKu^$4`x0#V%^LnV+f9#;cM2& zuDGo%g5Q==FuDdexS_Z|tsDWPSQ8Z5sm;-gxP_p;iXZy>(}%Jqg(K)UniO(t)D$7~ zt)=tevlusg^+*JFAjyX>oQt#>Jh-kx{Hjamu|au|SyJ0~l>41O4UQ*e*9Iae%wh6i zNd^epbM?op3i)qMDfAn2D2#68JOXhF1uCqA0QaY(q3mw0!@e-&y$Ln79KLjTW?uDlKCN&CM`Kl2itd<9`Lu-qg;ln4^5TZ$3mmH$Cu;#WVZF2x3(~E$++F`)5A!1oUYkZegr#u*C z;xeu5yF>3gmVU3=1CTli_*3u#YKuidP_$}Ud0syG!Ln_`0~*^Pt~~dDKG;Hot%-EK zbqRrk%PQ=+`br8Y4IMv)&7jPR#;u#8PJjS9FWHn@%VHo#1FPTW8?W?vD9c41jAReafI5{C3fiMI8%qC)C6`?n$39HQsNFW1KbU_uV8G{7{XJ zINR#m`_rdIKQ(k{2(ubgpcVU$ImC*?BC5e4I`k2wer8?~qQZl05(F$^f2!7OmBuxAyG3cSSv9Fh|N2 zXp9a{%(P2=SnLMVT^k|XMf!+2%y{+QvyDZz%wrbl09%5;H||Q$+=jTi2ns;S_#yz; z%hu;xo!nOP_N_6Xd)yD-FC4NnRbHH8O9)yA_T9tIV!j{mq!9}u+T7ebek=r=CPL{! zq*JBIz@lB;m+xb!n?tzib-AqT?)5yotOcHHWl0qy*R<&4Sha<6%!u*%h(xs;hnAj#b zrr29@5JNzf)fD`F?;0Kvbg1wsn+x5_xm-T&+B?svy?X=flPHBYb_94AC;hB>>gB+80l_eyehz2L#1)=o{v$rr?`>r}e|?0T-kZU<@tv!( zy^J}zG>*uy0*H~wNfJmagOzq~8%b2a8wokQ2T;LTt&WrAQ}8>%slfe~LL{6F0fWQ3 z@7AskrQ^DPdOu?JFr5#1ZSP7uUr)c*X7x(8Ug)%QotrfN767|Xe1Yar z2d`u7Pz^BKHI5Q_0)bdNh01T#mYIZl8N@C5V1B-BtG9#Df60tU@S{3{AOs!8X^5zN zTv)Z{1H?@q{G2XG#KYB7W1Ng+m@1~LACB!>&gS+&JIpejxipC;gP1a~Dp%02G3ayW zBGp?fjcy~5Nw9esp_)L@UXBf$*d!4#=SMx0It7s8ZjtkxPqQ;Y5u?;z1d#&@a3%yg z+^F>CH4?5D);I0Mk(m~ElWmdWSd8_F{>KuwxL|?FRcoxl$-rBJ0~uLt?UT&4v({P8(vkufhwhLMI&kJcmMsl$=_ z<6~0$Zl4B||3O*(b}sNyvt$n;S1@6dOfGEbl4{n0sJW?PKiXE-WjVB5(<_>%V+!?- zBfwZqK-W%{pW*XtQ`LHSVoaMiz1y_$AJ@2#R{f!VLpo6C=VNnCUC3O8)*KCqM4|}- z*M4=C2hC`umTctbEuXB|{U6zHd!OP_)jLSB`A+dJg{HMB`!k1+ObKOlWNM>^^t${41UuZlXHV4Ptlq5x+rl=3a1_YtA?t*LBWlB!C9O^z&f*_Q zx+sMx_-#R6ga|@dv|YHcOH8d?0sP?j}AI#R(4{L_E>mP6leQEZ-DgySaSsinXdg2{$sXhb2)7nz(Juv6K~S*0iGE zJFWhJ$Z-o6ocQo`ZJvsd`^M^bA;}==CjtC+I3y%QX7RQPIXo-IX$nIvno)_gn7e^7 zqI#@JX&w1pz3_@;A80KB?r9y)qYjMWxbl`tl}|A-`RVy3X2$-52fMl~;aEv4djlBd z0lFpg=a7d6-rlf%hSlMen3SBH8IZR(_$5^v$4Oo_8LQ;m8vy(|3Q-V-QVVjPE)*8G zE23V%c+m-rsXjT<5AcpnxAc93da;mY!2?B|Q-2}SR>k;vXDeWQo$X~~N;xcCe}T?# z-@P05A*ba1dy%EkuburqI|AaTkOO!EqR}J8UX=x|r%*sUt;}~R-H*kG#nn|~aT10# zI2;-SNscHkIZOkIPGtLj&y;O=FMD6ONP=FSnV$aR^+%|*TgmT4E4}XX+rMYF-wrtG z#VIaH@J0lA36$zm1 zU8Ebsuc%s?!3Guy2O})ph)u~a`idlkvojIwW_j7mF>lIX71UNNTAShObdd~Z;qdpf zQXm`cPIIlkeBs==Vd!BIMjVffw3+wdS>gVcA*W0A#}bmI*9LT!keqB8QT-5)F?Z?2 zvYe!`7e_nxxSz>bgdaU;U$gCCQow~uMK${3a`v9gL!~ux`Nkc;|B*pT5SezcXAm+B z=~+^gPCp)^M8F)z>y~l2mls##CioDlqKx<^TzKG0v}$)H5OxA%kqK`4B#C_RR;r5| zH*O5OA`zGLBMAVbfOT<1vn${xZUmB&Q00j8Pu0C&xAy(;T5D_AIWOMFrtj2X5Eb=C zJ@%2jin()}JWav>T@CatWvKH|Z~`xkzsD@dX^oBwtfc@DD|ecW>HjIWb8PjhA!l2# zw6w5ViXOToj}C4fp@JgPS&_AocD|CE)V`!)L+D>A$nGF&*BPQFj#d)wrCw${n+_fO z3G2Rp4quf;J|_jS{5n=gZUCrytRd&ueiJKe>jNcrD}l{C=s!s7r)E($Rq?3R z=$5rPL=v{cP{Oj`oJVisW}OCB5G6%w&j*|n{px5qu6CmP4`rpPT)-f^p2he&` zg1&Dj(N&|8D1iP)S_jM^?kM;j_0GIN*^UucEx_Nyf9}$2ODkP6Og1X4lS!MNbOs9+ zmk=zxRDEB3Z4zTqp8BeF_vzwxf6g=*DT6ITPS88sBBcgCHs~{P0tzuv-U*$IFxaa0 zby9S3MgRjAa&qs?STc~gIBUQ;*}@2mwdzy)Q_+j6jC&lcp;{!P_+%~->xS`)fB$)4 z-hQkfXyz}t)QRvGB6lIelC+1|8~eDF`t9-QE0&= zxyI{G4!we#!zz1apt8%)_A4pZ)dGGL8^KjhD%#V)(PFEAR%c)Ra^~QppH1>hPpa)c zzb$&~k=vd1M^4{=c%$BtAWhwb>Bf(HTx~ofb!*oxN0a6>F@8KT$kWO){GVB;hwUAi zbD?SSok{vbmk+Qy@wF;yT-lyso!Y(pGsY&KdRq5^~R z8*XY7!mj7tTPnU((1_w`!B2PT2K$L&%iS*K?2KeI1!)l3O5008XTZvOtuCI-Twp=y zJzUzuZ;)}wuqc|F@7};KBIOW!T;hXvd*id+`z>32FFg5S`pYN@zk#>mQ3Qq&pq- z_m{xzU(~ee9&@K?_z-PHEd*(`=+pGr6MGp(P5;-KERD)HZ06@ECqrL&57JOk-rwSx zwT;Ur&IP0i?cvyXd>?JluV2!*!Bw?|b1=G@4;oIP;t=I!@R#yXv(cI-JJY+S)5aV_ znf8g=F#KifBG#$_P5?0Bh5@F&|8|h+f8;^W^W!~f9~IdKTNQAoO81@MFYd!bDqP5Y zM4v>UzM*XCVF)Wgbe>R+4LygLHSle{vyU6e8-WRZQf+uak`r$`ykS)EMEM)GXQ(5G zE?#_kW@jJ88M+b9<*6e^tDl^b`tYF}t5tf{oInju>L4vHY9TS_a&dKK zdLk?$k1(H(>wy2yPFbm~J)G|_*WNc0Cio6+N_IRYgRm@ZNzE_@x#Kb`i6Ea(lt$DR zFR_Z25+JIYjY~yKGUXQ=N8BJGoC{0j5)-!p(E4kg%%EZ2f_B|z0_*LHYtd)UxM5WY z-7CS<++*SV`J2+xCZb8$@u#9W>+sZ3?oa?18E1&13eZp5x0m0aLro@A^C+W*Xv8aI ze&Io_!tO<5OuY{kmW_DU&vT@Og>*ll%A$36z{jtJf(fc#0Hh{WY0VNKRSEu=OLE|sKv{4n?EleqVpkp|^J`gH-DDYV(f9567l4vDZ~(6X>)v%!tI9-3 zCO&wi%z?CuR-}e-XE1xjMhGUnu|?1_6bZ|55tNbFmRns9bkV*QKdw)+)12hOkB~Xy zTu5tKbrVmvAj@6xD1^u$ZMra@pfjx1WpsN$H4W9xg2rD;v+yullG~p?y4m}+TRYn8 zf}n4v(3Tbi<;3~FY!IrS-ciIRTffX=4s*L?*rOZ-_&of2WYb3yrh)Ke!UU3}T}mCC zHnBKK4dZijuia`M%@JVBW|TKZk0!-)SOb0Hf^uEe>);(t04C~sc^~Z4ELtoa3p|^c zTo-n2)28umY8hgJ2q4O`MFYHOd#6YeYk}Yh<{SQKF>xJTNdxrPHEtrGRJ7-&S)@0M z1?U$kk6a{&kn+&UTXvd!tIuMAW?{Dd+E4KB4_OP3%Av_*wF0FMo7PgLl$T_R8QcxB z34*J9(qa741l^UgA0X4#)VsKVpHg;7*Z=Licm5U8`g(c~p%CHplux`Zh(Bg!#{@|x z+gt|`d&tlh?ya^j<_O0maV4w+bT8=TU7QSM8q2n+vCaeZ^!53mwG4pc*{^soG3+^c zx0FTnBMBr1i#po(AYKc?NO3|jnCzw&5DC$-%+;%#Cx6n>M=))_`!9@?X5TrED6W zwymW;O$=p$sefOHJ+VvJ#qdXx9EN#o{)K`LE`0)(i~o;kwu%?&xG;Z&_2M}$d^d@X z_;y#sNt7bHw^hnt6G=~e&ypP)x`sgls}Tt`!f-C(r=!QJITwCR!1Ahf%^tAp>e3u0IqKK+(f^O);vIfDt$2G|)~MxCQvCi|fO$}@e8mk@NUi*d)IRmIUcZ|iYW}YP zO_e~4j)iYd{`y(@^wGaRY%LLI$wB_>gIU|Z zzF)rGq65Knh`6?+JBgZd?F(o|)&{F7Q(oAjljd!ine}vH9JCa43O6EP&_rE|nryvi z-#ME*>>Fu7_-KqT#eaNi%{TwYgV{X{cs&uHq8;@61Aw4ph7Eu?MgMH4w*Y?muU~uf zl4LZUtPKIv>8WLP?z8gcz4d_?o);F{FV3BWP8k9NJ&|i=5B?OkKJ6`sccaLuKc_RFq?cxVE`vg3|05Th4aIe8 zwRvA+B6>3FbKQLHzc|t$ zE8IgBg^V%2bNB8?;*$K3aYn%xIQrA_FW96L@-zou#2`)qtE`j5)eEsuY2#Mq^~-bi zq^gqv=Wq_&ii0Cp059mj*KN5T6{aVt2R0Mqr%h8iIr-b29FiM};4*1jS~+k)Z0y5G zk>VZu1?5Fo1fM@&9{e3HnoL>*Oey3oc%!$Pthb4EP33emo)}QG!~Y2ZFsI2AkFH-r z4vF4ur+XkbVv!{&n*!^oM)}p_8ilU`)F79ODgV)L(f2VtGEmlds4+H9*SI{6<=P7A z(#xyPi8eAY@KeTBrDluAj09XIt?ISm^I~y^K*cbEe_ z5b%WrLC`j3;HSAwan2gF13X+QHWk7*fpw^oU;1cdX84SH3W`BL$5Ul!n)F0?BOsIbaD z>P?%f>=(i##1W7d(j&9lQ8Y+0n-L z_h3cPsOAjVgt6~t*sRAvLVtH0F;x*Dzog`@fU8)jIlpsgUKa;H-OUn93%vSX6E z7xfPeV`z8>(vz&$?`DHKkVdGUsii^t44kp(%1+)}B{asConO*NAIdW6U&(bAby&35 zqN9+AVTk^$Ds@E(H2R_YTRLDe9R#QcmR?<6L-*{XqM_;5YNglR<7B&+u3YKsbXAB< z(EQ1-H0IS2{GWZ5>@t{#y^X!BKROq$gIIMw@Vm zB(=72cBk$QB!3w{vDt(9`w<}t7Z-cj9X(?!Yww|$+xh8>**04l z`a%_Hs9q}?e_aTi7$eM3b8%!-wQbj~rS@m8Ry-A`;u76S4bq!gKBt0_UN)y*KF2&4 zx&?YcLY>Jp83E12Y>o?%-+&6|qvLyMIEcACOFB_?iEwtNwatG`80NEC5q{r)LTH8==Jykz zZ6nqBQK)ZhvNR z#6Wy0%Qjcay1G`zj%eCEswdpUuEbuSbO?ftBXbe%(#fTgf- zZ}lkbsG#*!qR=sb`Q`i}zMg6WBMpuML>soy21Pu;`K#Vyz~q=a{ZY#eIo;bTb3yL8 zg*y}e*t7Q8`g%yq>w^f>-OsJ)*`>>t=J<=*-yeXk_i3nO-{fY;V2Lo?Ip9o4j~JOw zDIRe%9i4|!AHWC^xg95p2n3I%-+;k4Vf^^(V-6NgMSlu(T<6@KOWfn8Q}-(eW*D`p zE<0MiY*(|U6T&iITiQVtqKyzmqG5IU6w5D?CgIIAe}-U^hNFxxvZF+sI`=s_$;3WM8%YODTQb zb)_+1u=|KtD&LIbCwJ;b(pY!cgSUBc?FkJYp?B*mz!z(x?y0`dON1g#_hT3@)}b#2 z!=A*%B_e|ri02_@qkOkm#uFFB{|8WkR5bHv9@Hr5u0!{vhKR@PhNZpb#EH&4AQ5}R z7!rO9YPAF~uH^_HvdWIS&Srmc93Ceo(qxTJETO}pK|4YMKkd@xRO4A?)gO1d3YJEr z^Q?mpLUx(ZN{A8zD}m4cVA4;TgGrwCs8M${UEc6+p;&s6e;2w|e{rRugKo+5Kp}&H zRe`!`<{`0c2!(0{l1HsXe<((TiA&jC7qU;#uqa~;SzelFqvm3jp6wI)9Nq&6`s2kx z`L&c3iWVJYMgX;6XJ6l^w#bdZYSps_g3RQj2UnZSh}NOfVwB0YxDU!GOanHi;yUXg zibkNE8dQ)hLiS+z$7}fJ2;P86v*@n@edamZa4hmG;-kZfMk90!0^9U;KS||DRU}xV z1Y!Ru(PKc*Dj`_7?(_#TvNMan#GIApoj*9t(#(alI_qIR3Pk0&_3c)mc!&BG)^5y)$`cBfdw{v*w8DZVh&dzUSFf%y*AQekk93j)l z*`@`Iz`RbcUJG;+Fni2=- zb8()(vSsi@d1sve9s|Z=gUF(Wn-YC&_pIUAYYMRiIP%3ca`b&yKMSrv;zL&Fz7?y*d;&WY>i>t2A4i<~AqHK@8R}9J$kw5Ofu1#y zbw)vU)!fB3Bk~1+kx=?cik>i;7)n5$wWopLmqYlE=zHN9Ss*oa1N(hZSNhsj7~T7H z;@iMc3m3lXyy&P=o0`YdP+wP9jE0`Me3>N}7M(Njzp&-SFIlhBDET9N!5O$rVhzup z)AkEZ)D2)w8Lcr0k1(XR*$PVs-BcrqT(kj&xPtE`eTb06GV!N|aRI)3oWhCLjg)>V5e1{-pSO;p9v|TGkT@rH{HnEpY{)X<+}ZWV_2&A0P3QVThh8 zltFP)rXdhdPJjnV1I5`)Cz{s6e`i~Y-17-bIe$l_ySox-aTGks&NhyxQ*xI$(gZ!T z=H2ws5X?wuJl?FGI#nGTw!riSr&BJG3k`v17?Z<^+k{8y|F$Y8JNxVcoe74PW5?nG zvfS67GEX*L(e0*ny+b$MexS4O@roYD|1F|c_v_kBU=JYMieec&Opx|*ttzou2ZRWr z$Mrgshv1PwiVyC#XfnKX)_-^}_nr7NOzpPh?4-&5S6uA#y*AwVnkq}&L;83$yXQt- zN}e5Jvhr%QJcun@>fyXtdru#Fj$%t?fqE7?dC{7gs9Lm$z_6;uG}}TWQ^&xdDWygC zjVk8!AP0}OJdVVC4jdaEd=j`HrORd(wKkMJX%CTk4lVy~k4SqTXO6V3)18A2 z_((Y#QP&IZBVE?aOzY3p(hL?X`F_7VQydA`#4Wb)jlEK=Qp=P~Tp0BHa4tsRQZt)r zPw)-+G&CY>MEcAy-_`fuU3vLY@Uv!H=PlF_7|F;)x%f~CG)phk!sJY;AOp@HZ?(Qe z%D(-6LGcuG#xI3VNi5FxA*9SX=d=CQ&Ntf!XIj0g5T(W0F=6C2d0nd(+&2%{{|IVk z*0k{%3mc;iR28)#>^4O{FTe}fhh~g}F*J`DP6lH*yJR&JsV_a1I@!Cm8m9?qM2>V8 z+2l2jhZ$PL`=y}YSXT!*LAoy(}g$4Rg zj$N!b^uCEUHPlRoSSDM|FE+ebawrK57P{d-r(@78Tw68rL&-}g5^skJ(j~<;%waP5kY@Lx*e#>s=j3b$?asL+MN|1>s zu`U||%l+Bh)5l_KL3{5bLg71o)p8(~z8&3P!Krg+R7kW~$mY3xX(!i8(U?Ha0uDFd zbgS3FK1&eI$_#Ikv`v87wsaCjD{mj(=}TXuZ}wqb4*qg3w}a)!(IOxNu58nuN4Gq_ zpnWPvI8dm!VK35o#+)#RC7Emg$V}S4GKRP=R1MG>CJD$vNpnm{%H4Z!!M5}aJwWW3 zL~hXQd62HXVc#Od_MtHkO3Fw$v5478i02SBvNxW3&M$O5@@oWv>YxS*)RRzjzMIc~ ziui->kUJDK5kz82RbNGAj;-90p02Kp7nf`SZudvV|ILL11hMde!_l%|_cXOC_tmJr z*Va9|7Lfi{heTM0F?~Q>c;R+#M5%Ga&epHKg=H^E9?%v?TZ~&6`95O2T@Yc_C1U$u zcT${>eI6K@LG9y7qepAN01Z4I?05G(b2`f+-5E8B?0YR89c5Ac({jmst@<}%N{ohR zZr>s%8h|jdNVd9nYBo3RFIsLe0hKDR-o8TFM*!RmxR_-(+qnCw<3`_#Pj!*&jXM*& z?)_D{UQIl7!Tk>{j*g1BJnQKCTyj9Qz!KsRzIo-`SVoCzoG z4IjTUj62TiU(O=C#6!)>`s!!==`T->AOl+DIxML*+yg=RTyg)i!=0jB!GzO%cg?dsK7!6(8f%uNi?9%|s+(~gn zu`h#}s0JjF=ZPi%F)3zv4A_sLUFqqXlLI3ooIJ=NgyKr$^dV5NxDG*~1&Q>l8185P zxoHeJtK@@-l{H;z-l28){oTkuG%EMFzXxIFYdFzF|nUU>y*s-8JU@p)<-hsFo1H1cax5cNom<~6Z0P5W=D^* zS{fZS8roawwX()Co~wykKxgS>V)39fw;BRucD-E7U83#We`8{cQRqxo<{NQsXZ*Hlj7 zSwu)?!FU6F9>?WRhyii^qt95&^~|TO!Qx&S9py)BTcD<8Ptl+i}Z9J_KDVL=|{34h%N`_Qw&k8uEYyrtm1M5&bpvjZi3P3(a&~tVN+O zGq;eLdCZt!`%pyRz<{&(-2eKhCu&eH%}}=hUEX>fn+QlP={1m=fqKWa5=$_o1M@Ld zU)mLWHZgJExpQa!w|`(7!tg#4aw67UIEW;)6wg0&8cNCMEJJN&m($q4&WG~E_+fmI zUr`#DDyCt){EbaF4udG`&eGV7x$mXebA9b@{97}M=dK-%o=OxdTcO>USJt8EtNE{S zCSPmAFI{MA(c|m)?>a0|tQJ(w2i;0aqPH|`SD4S~`%ji}jF_2)580FMJQcY$j$7hN z#?2YtNl~d^pR^g(UO&$vD;#K5(-0m3;zlv>w?+CePzHK(ILXyq((|0Z4eU0*{W5Fi z%qFMs|3B8eX{v+KtmbgfbZ=Z9P%A}zEIa-%r zaTJrFYm-uPz^Yn^VXhA+u8cPGcKJk=#&vKdS&7`j0R!m zjA*Blh&;a+))*0eAI}A}1HbU3TG#sC9#=Nza&fZPeHp4=dc(!9oAYltfY~j8W~#$&C;C zy8WsHpU;r{hWRai2w-G@K<#;~m)4h^NDw<%e=1LNgvMff$!gVM#CJ&0?))i{eLHvR zWT0MMf$BrWX`f%TMw>jURs;C`HK1*S5y1m&M&phz92J=8yd59T;JGj+q`ysP+1A$9 zjfNf#uW4%Wdn`Hv4GpK~3>#H6!t}VEKP7j8FS398Sxq?WZC|8!wb>jV9xj>#^wPbx z6jbE((E6#i={tH?)wt24Z*qYG54P>U%&p#eKjgMr0|#EovKK&4cV^nuaL!RuLpix{ zsQ*yvTHOZrh&e?d8yn+tZSQ=b0JM_IaJ)rKit|fjG3h#W>du(<%$FZAz^DOCQeK@% zZQ?5<`9PHmr5Ry!IEM?|7uUK!MXLPJ0k Date: Fri, 28 May 2021 11:59:26 +0200 Subject: [PATCH 30/37] update name of graph --- docs/basic_usage.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/basic_usage.rst b/docs/basic_usage.rst index d9cb0e1d..b2b8cad3 100644 --- a/docs/basic_usage.rst +++ b/docs/basic_usage.rst @@ -14,7 +14,7 @@ There are three examples, one that accounts only for the electricity sector, one Here's an example energy system graph of a sector coupled scenario of the simulation provided in ``examples/run_pvcompare_example_sector_coupling.py``. -.. figure:: ./images/basic_usage_energy_system_graph.png +.. figure:: ./images/energy_system_graph.png :width: 100% :alt: energy system graph. :align: center From 2b822518a06fe239faf34982fca92b99f2d90686 Mon Sep 17 00:00:00 2001 From: Piranias <44803304+Piranias@users.noreply.github.com> Date: Fri, 28 May 2021 12:00:26 +0200 Subject: [PATCH 31/37] Update docs/basic_usage.rst Co-authored-by: Sabine Haas --- docs/basic_usage.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/basic_usage.rst b/docs/basic_usage.rst index b2b8cad3..16d3c47c 100644 --- a/docs/basic_usage.rst +++ b/docs/basic_usage.rst @@ -101,7 +101,7 @@ to your weather file to the parameter ``add_weather_data`` in the :py:func:`~.ma should be a csv file with the columns: [time, latitude, longitude, ghi, dni, dhi, wind_speed, temp_air, precipitable_water] and contain hourly time series. -You can also download ERA5 data yourself. `oemof feedinlib `_ provides a jupyter notebook with instructions on how to download data for a single coordinate or a region. +You can also download ERA5 weather data yourself. `oemof feedinlib `_ provides a jupyter notebook with instructions on how to download data for a single coordinate or a region. **Demand time series** From 972b697608f04057b45f4ff885ecfaf29c24daf6 Mon Sep 17 00:00:00 2001 From: Piranias <44803304+Piranias@users.noreply.github.com> Date: Fri, 28 May 2021 12:00:45 +0200 Subject: [PATCH 32/37] Update docs/basic_usage.rst Co-authored-by: Sabine Haas --- docs/basic_usage.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/basic_usage.rst b/docs/basic_usage.rst index 16d3c47c..a55d67a3 100644 --- a/docs/basic_usage.rst +++ b/docs/basic_usage.rst @@ -105,7 +105,7 @@ You can also download ERA5 weather data yourself. `oemof feedinlib Date: Fri, 28 May 2021 12:08:15 +0200 Subject: [PATCH 33/37] Apply suggestions from code review Co-authored-by: Sabine Haas --- docs/basic_usage.rst | 27 +++++++++++++++------------ docs/model_assumptions.rst | 1 + pvcompare/main.py | 2 +- pvcompare/pv_feedin.py | 22 ++++++++++++---------- 4 files changed, 29 insertions(+), 23 deletions(-) diff --git a/docs/basic_usage.rst b/docs/basic_usage.rst index a55d67a3..6f6e3126 100644 --- a/docs/basic_usage.rst +++ b/docs/basic_usage.rst @@ -106,30 +106,33 @@ You can also download ERA5 weather data yourself. `oemof feedinlib path_to_time_series< , "module_size": >module_size in m²<, "module_peak_power": >peak power of the module in kWp<, "surface_type": >surface_type for PV installation<], "PV2" : [...], ...} + You can add more than one module time series by defining more PV-keys. -The PV time series itself needs to be be an normalized hourly time series in kW/kWp -(normalized by the peak power of the module). The surface_types can be one of: [ +The PV time series itself needs to be a normalized hourly time series in kW/kWp +(normalized by the peak power of the module). The surface_type can be one of: [ "flat_roof", "gable_roof", "south_facade", "east_facade", "west_facade"]. Note that you need to add more specific PV parameters of your module (name, costs, lifetime etc.) in -``user_inputs/mvs_inputs/csv_elements/energyProduction.csv``. The columns in ``energyProduction.csv`` -should be named "PV"+ key (e.g. "PV SI1") if your key is "SI1". +``user_inputs_mvs_directory/csv_elements/energyProduction.csv``. The columns in ``energyProduction.csv`` +should be named "PV"+ key (e.g. "PV SI1" if your key is "SI1"). When providing your own time series, ``overwrite_pv_parameters`` in :py:func:`~.main.apply_pvcompare` should be -set to false. When ``add_pv_timeseries`` is used, the ``pv_setup.csv`` is disregarded. +set to ``False``. When ``add_pv_timeseries`` is used, the ``pv_setup.csv`` is disregarded. **Add a different SI module** @@ -138,10 +141,10 @@ But you can add another module from sandia or cec `libraries `_ database. The module diff --git a/pvcompare/main.py b/pvcompare/main.py index 6b5ac713..30a9390d 100644 --- a/pvcompare/main.py +++ b/pvcompare/main.py @@ -183,7 +183,7 @@ def apply_pvcompare( # add datetimeindex weather.index = pd.to_datetime(weather.index) - # check if add_pv_time_series is True + # check if add_pv_time_series is provided if add_pv_timeseries is not None: pv_feedin.add_pv_timeseries( add_pv_timeseries=add_pv_timeseries, diff --git a/pvcompare/pv_feedin.py b/pvcompare/pv_feedin.py index 8e4a0069..92db3962 100644 --- a/pvcompare/pv_feedin.py +++ b/pvcompare/pv_feedin.py @@ -98,8 +98,8 @@ def create_pv_components( If True: Time series is normalized. Otherwise absolute time series is returned. Default: True. add_sam_si_module: dict - with library (’CECMod’ or "SandiaMod") as key and module name as value. - E.g. {"cecmod":'Canadian_Solar_Inc__CS5P_220M'} + Dictionary with library ("CECMod" or "SandiaMod") as key and module name as value. + E.g. {"cecmod": "Canadian_Solar_Inc__CS5P_220M"} Returns ------- @@ -316,8 +316,8 @@ def set_up_system(technology, surface_azimuth, surface_tilt, add_sam_si_module=N surface azimuth of the module surface_tilt: float surface tilt of the module - Dictionary with library (’CECMod’ or "SandiaMod") as key and module name as value. - E.g. {"cecmod":'Canadian_Solar_Inc__CS5P_220M'}. + Dictionary with library ("CECMod" or "SandiaMod") as key and module name as value. + E.g. {"cecmod": "Canadian_Solar_Inc__CS5P_220M"}. Note that the SI module is only considered if there is the technology "SI" in Returns @@ -413,8 +413,8 @@ def create_si_time_series( If True: Time series is normalized. Otherwise absolute time series is returned. add_sam_si_module: dict - Dictionary with library (’CECMod’ or "SandiaMod") as key and module name as value. - E.g. {"cecmod":'Canadian_Solar_Inc__CS5P_220M'}. + Dictionary with library ("CECMod" or "SandiaMod") as key and module name as value. + E.g. {"cecmod": "Canadian_Solar_Inc__CS5P_220M"}. Note that the SI module is only considered if there is the technology "SI" in Returns @@ -635,8 +635,8 @@ def nominal_values_pv( surface_tilt: float surface tilt of the modules add_sam_si_module: dict or None - Dictionary with library (’CECMod’ or "SandiaMod") as key and module name as value. - E.g. {"cecmod":'Canadian_Solar_Inc__CS5P_220M'}. + Dictionary with library ("CECMod" or "SandiaMod") as key and module name as value. + E.g. {"cecmod": "Canadian_Solar_Inc__CS5P_220M"}. Note that the SI module is only considered if there is the technology "SI" in Returns @@ -737,9 +737,11 @@ def add_pv_timeseries( user_inputs_mvs_directory, user_inputs_pvcompare_directory, ): - """ + r""" + Adds PV time series of user to the simulations inputs. + This function calculates the maximal capacity and inserts the time series filename - and the maximum capacity into 'user_inputs/mvs_inputs/csv_elements/energyProduction.csv'. + and the maximum capacity into 'user_inputs_mvs_directory/csv_elements/energyProduction.csv'. Parameter ---------- From 4a9d7d783c5ee03b125cd1545449659961678708 Mon Sep 17 00:00:00 2001 From: Piranias Date: Fri, 28 May 2021 12:22:44 +0200 Subject: [PATCH 34/37] update docstrings --- pvcompare/demand.py | 8 ++++---- pvcompare/main.py | 20 ++++++++++---------- pvcompare/pv_feedin.py | 24 +++++++++++++----------- 3 files changed, 27 insertions(+), 25 deletions(-) diff --git a/pvcompare/demand.py b/pvcompare/demand.py index ccb713f8..130968e0 100644 --- a/pvcompare/demand.py +++ b/pvcompare/demand.py @@ -83,12 +83,12 @@ def calculate_load_profiles( Default: None. user_inputs_mvs_directory : str or None Path to mvs input directory. If None: DEFAULT_USER_INPUTS_MVS_DIRECTORY. Default: None. - add_electricity_demand: str + add_electricity_demand: str or None Path to precalculated hourly electricity demand time series for one year (or the same period - of a precalculated PV timeseries) - add_heat_demand: str + of a precalculated PV timeseries). Default: None. + add_heat_demand: str or None Path to precalculated hourly heat demand time series for one year (or the same period - of a precalculated PV timeseries) + of a precalculated PV timeseries). Default: None. Returns ------ diff --git a/pvcompare/main.py b/pvcompare/main.py index 30a9390d..3f161976 100644 --- a/pvcompare/main.py +++ b/pvcompare/main.py @@ -108,26 +108,26 @@ def apply_pvcompare( 'user_inputs/mvs_inputs/pvcompare_inputs/pv_setup.csv' add_electricity_demand: str or None Path to precalculated hourly electricity demand time series for one year (or the same period - of a precalculated PV timeseries) + of a precalculated PV timeseries). Default: None Note that that the demand is only considered if a column "Electricity demand" is added to 'user_inputs/mvs_inputs/csv_elements/energyConsumption.csv' add_heat_demand: str or None Path to precalculated hourly heat demand time series for one year (or the same period - of a precalculated PV timeseries) + of a precalculated PV timeseries). Default: None Note that that the demand is only considered is a column "Heat demand" is added to 'user_inputs/mvs_inputs/csv_elements/energyConsumption.csv' add_pv_timeseries: dict or None Dictionary with {"PV1" : ["filename": >path_to_time_series< , "module_size": >module_size in m²<, "module_peak_power": >peak power of the module in kWp<, "surface_type": >surface_type for PV installation<], - "PV2" : [...], ...}. If you want to consider more PV time series, more PV keys can be added. - The PV time series itself needs to be be an normalized hourly time series in kW/kWp - (normalized by the peak power of the module). The surface_types can be one of: [ - "flat_roof", "gable_roof", "south_facade", "east_facade", "west_facade"]. + "PV2" : [...], ...}. You can add more than one module time series by defining more PV-keys. + The PV time series itself needs to be a normalized hourly time series in kW/kWp + (normalized by the peak power of the module). The surface_type can be one of: [ + "flat_roof", "gable_roof", "south_facade", "east_facade", "west_facade"]. Note that you need to add more specific PV parameters of your module (name, costs, lifetime etc.) in - 'user_inputs/mvs_inputs/csv_elements/energyProduction.csv'. The columns in energyProduction.csv - should be named "PV"+ key (e.g. "PV SI1") - When providing your own time series, overwrite_pv_parameters should be - set to false. When add_pv_timeseries is used, the pv_setup.csv is disregarded. + ``user_inputs_mvs_directory/csv_elements/energyProduction.csv``. The columns in ``energyProduction.csv`` + should be named "PV"+ key (e.g. "PV SI1" if your key is "SI1"). + When providing your own time series, ``overwrite_pv_parameters`` in :py:func:`~.main.apply_pvcompare` should be + set to ``False``. When ``add_pv_timeseries`` is used, the ``pv_setup.csv`` is disregarded. Returns ------- diff --git a/pvcompare/pv_feedin.py b/pvcompare/pv_feedin.py index 92db3962..a763f5ad 100644 --- a/pvcompare/pv_feedin.py +++ b/pvcompare/pv_feedin.py @@ -99,7 +99,7 @@ def create_pv_components( returned. Default: True. add_sam_si_module: dict Dictionary with library ("CECMod" or "SandiaMod") as key and module name as value. - E.g. {"cecmod": "Canadian_Solar_Inc__CS5P_220M"} + E.g. {"cecmod": "Canadian_Solar_Inc__CS5P_220M"}. Returns ------- @@ -319,6 +319,9 @@ def set_up_system(technology, surface_azimuth, surface_tilt, add_sam_si_module=N Dictionary with library ("CECMod" or "SandiaMod") as key and module name as value. E.g. {"cecmod": "Canadian_Solar_Inc__CS5P_220M"}. Note that the SI module is only considered if there is the technology "SI" in + add_sam_si_module: dict + Dictionary with library ("CECMod" or "SandiaMod") as key and module name as value. + E.g. {"cecmod": "Canadian_Solar_Inc__CS5P_220M"}. Returns ------- @@ -415,7 +418,6 @@ def create_si_time_series( add_sam_si_module: dict Dictionary with library ("CECMod" or "SandiaMod") as key and module name as value. E.g. {"cecmod": "Canadian_Solar_Inc__CS5P_220M"}. - Note that the SI module is only considered if there is the technology "SI" in Returns ------- @@ -740,7 +742,7 @@ def add_pv_timeseries( r""" Adds PV time series of user to the simulations inputs. - This function calculates the maximal capacity and inserts the time series filename + This function calculates the maximum capacity and inserts the time series filename and the maximum capacity into 'user_inputs_mvs_directory/csv_elements/energyProduction.csv'. Parameter @@ -748,15 +750,15 @@ def add_pv_timeseries( add_pv_timeseries: dict or None Dictionary with {"PV1" : ["filename": >path_to_time_series< , "module_size": >module_size in m²<, "module_peak_power": >peak power of the module in kWp<, "surface_type": >surface_type for PV installation<], - "PV2" : [...], ...}. If you want to consider more PV time series, more PV keys can be added. - The PV time series itself needs to be be an normalized hourly time series in kW/kWp - (normalized by the peak power of the module). The facades can be one of: [ - "flat_roof", "gable_roof", "south_facade", "east_facade", "west_facade"]. + "PV2" : [...], ...}. You can add more than one module time series by defining more PV-keys. + The PV time series itself needs to be a normalized hourly time series in kW/kWp + (normalized by the peak power of the module). The surface_type can be one of: [ + "flat_roof", "gable_roof", "south_facade", "east_facade", "west_facade"]. Note that you need to add more specific PV parameters of your module (name, costs, lifetime etc.) in - 'user_inputs/mvs_inputs/csv_elements/energyProduction.csv'. The columns in energyProduction.csv - should be named "PV"+ key (e.g. "PV SI1") - When providing your own time series, overwrite_pv_parameters should be - set to false. When add_pv_timeseries is used, the pv_setup.csv is disregarded. + ``user_inputs_mvs_directory/csv_elements/energyProduction.csv``. The columns in ``energyProduction.csv`` + should be named "PV"+ key (e.g. "PV SI1" if your key is "SI1"). + When providing your own time series, ``overwrite_pv_parameters`` in :py:func:`~.main.apply_pvcompare` should be + set to ``False``. When ``add_pv_timeseries`` is used, the ``pv_setup.csv`` is disregarded. storeys: int number of storeys for which the demand is calculated. user_inputs_mvs_directory: str or None From c3c77426130bd0b5712bd7cf937d6bfde3e1a3ae Mon Sep 17 00:00:00 2001 From: Piranias Date: Fri, 28 May 2021 15:38:40 +0200 Subject: [PATCH 35/37] remove dots --- docs/model_assumptions.rst | 2 -- 1 file changed, 2 deletions(-) diff --git a/docs/model_assumptions.rst b/docs/model_assumptions.rst index a28ce493..882e9daf 100644 --- a/docs/model_assumptions.rst +++ b/docs/model_assumptions.rst @@ -175,8 +175,6 @@ The utilization factors are defined as follows: :width: 60% :align: center - ".." - The overall model for the hybrid system is illustrated in the next figure. From 50a924209919323f71e3baadca52a216a6c50f26 Mon Sep 17 00:00:00 2001 From: Piranias Date: Fri, 28 May 2021 16:23:19 +0200 Subject: [PATCH 36/37] fix raise error and further tests --- pvcompare/pv_feedin.py | 2 +- tests/test_main.py | 71 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 72 insertions(+), 1 deletion(-) diff --git a/pvcompare/pv_feedin.py b/pvcompare/pv_feedin.py index a763f5ad..8dec6aab 100644 --- a/pvcompare/pv_feedin.py +++ b/pvcompare/pv_feedin.py @@ -778,7 +778,7 @@ def add_pv_timeseries( for key in add_pv_timeseries.keys(): # check if PV timeseries exists if not os.path.isfile(add_pv_timeseries[key]["filename"]): - logging.error( + raise ValueError( "The PV time series you have specified does not exist. " "Please check your input or set `add_pv_timeseries` to None " "in order to use the default pvcompare methods." diff --git a/tests/test_main.py b/tests/test_main.py index 6d215da8..d459042c 100644 --- a/tests/test_main.py +++ b/tests/test_main.py @@ -161,6 +161,47 @@ def test_apply_pvcompare_add_demands(self): == filename_electricity_demand ) + def test_apply_pvcompare_add_demand_does_not_exist(self): + # delete file + directory = os.path.join(self.user_inputs_mvs_directory, "time_series") + filelist = glob.glob(os.path.join(directory, "*.csv")) + for f in filelist: + os.remove(f) + + filename_electricity_demand = os.path.join( + self.user_inputs_mvs_directory, "predefined_time_series/not_available.csv", + ) + + main.apply_pvcompare( + storeys=self.storeys, + country=self.country, + latitude=self.latitude, + longitude=self.longitude, + year=self.year, + static_inputs_directory=self.static_inputs_directory, + user_inputs_pvcompare_directory=self.user_inputs_pvcompare_directory, + user_inputs_mvs_directory=self.user_inputs_mvs_directory, + collections_mvs_inputs_directory=self.user_inputs_collection_mvs, + plot=False, + pv_setup=None, + overwrite_grid_parameters=True, + overwrite_pv_parameters=True, + add_heat_demand=None, + add_electricity_demand=filename_electricity_demand, + ) + + energyConsumption = pd.read_csv( + os.path.join( + self.user_inputs_mvs_directory, "csv_elements/energyConsumption.csv" + ), + index_col=0, + header=0, + ) + assert ( + energyConsumption.at["file_name", "Electricity demand"] + == "electricity_load_2017_Germany_5.csv" + ) + def test_apply_pvcompare_add_pv_timeseries(self): filename_pv_timeseries = os.path.join( @@ -201,6 +242,36 @@ def test_apply_pvcompare_add_pv_timeseries(self): ) assert energyProduction.at["file_name", "PV si"] == filename_pv_timeseries + def test_apply_pvcompare_add_pv_timeseries_does_not_exist(self): + filename_pv_timeseries = os.path.join( + self.user_inputs_mvs_directory, "predefined_time_series/not_available.csv", + ) + + with pytest.raises(ValueError): + main.apply_pvcompare( + storeys=self.storeys, + country=self.country, + latitude=self.latitude, + longitude=self.longitude, + year=self.year, + static_inputs_directory=self.static_inputs_directory, + user_inputs_pvcompare_directory=self.user_inputs_pvcompare_directory, + user_inputs_mvs_directory=self.user_inputs_mvs_directory, + collections_mvs_inputs_directory=self.user_inputs_collection_mvs, + plot=False, + pv_setup=None, + overwrite_grid_parameters=True, + overwrite_pv_parameters=False, + add_pv_timeseries={ + "si": { + "filename": filename_pv_timeseries, + "module_size": 1, + "module_peak_power": 50, + "surface_type": "flat_roof", + } + }, + ) + def test_apply_pvcompare_add_sam_si_module(self): main.apply_pvcompare( From b6cc63313ff57d9b4326f9ba3adb1b7fb82c13e6 Mon Sep 17 00:00:00 2001 From: Piranias Date: Sun, 30 May 2021 17:19:22 +0200 Subject: [PATCH 37/37] apply black --- pvcompare/pv_feedin.py | 1 - 1 file changed, 1 deletion(-) diff --git a/pvcompare/pv_feedin.py b/pvcompare/pv_feedin.py index a30c7fac..2837d4ff 100644 --- a/pvcompare/pv_feedin.py +++ b/pvcompare/pv_feedin.py @@ -617,7 +617,6 @@ def create_psi_time_series( return (output / peak).clip(0) - def nominal_values_pv( technology, area, surface_azimuth, surface_tilt, psi_type, add_sam_si_module=None ):